所以我熟悉randsrc并且我可以使用给定概率的整数随机字母表创建.所以我想说我有这个字母表
alphabet={'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z'};
prob=[0.08167 0.01492 0.02782 0.04254 0.12702 0.02228 0.02015 0.06094 0.06966 0.00153 0.00772 0.04025 0.02406 0.06749 0.07507 0.01929 0.00095 0.05987 0.06327 0.09056 0.02758 0.00978 0.02360 0.00150 0.01974 0.00074];
Run Code Online (Sandbox Code Playgroud)
注意:字母表是1x26维度的单元格,prob是1x26双数组.
我可以像这样创建一个随机字符串
s = 'abcdefghijklmnopqrstuvwxyz';
%find number of random characters to choose from
numRands = length(s);
%specify length of random string to generate
sLength = 10;
%generate random string
randString = s(ceil(rand(1,sLength)*numRands));
Run Code Online (Sandbox Code Playgroud)
这种方式的问题在于我无法找到一种方法来考虑概率.所以我一直在努力做的是:
randomString =randsrc(10,1,[alphabet; prob]);
Run Code Online (Sandbox Code Playgroud)
但这会在控制台中显示:
Error using vertcat
Dimensions of arrays being concatenated are not consistent.
Consider converting input arrays …Run Code Online (Sandbox Code Playgroud) 大家好我正面临一个问题,因为我无法想出一个方法,它将采用一个字符串(实际上是日期/月/年形式的日期)作为参数,并在矢量或数组中对其进行标记.有人可以帮忙吗?我知道有很多关于此的主题,但我找不到任何不包括boost的解决方案(我不想使用).