【发布时间】:2013-10-16 06:04:14
【问题描述】:
Java 中是否有类似 Matlab 中的 randsample 的函数,它可以返回加权样本(随机均匀采样并替换,并且每个数字都有一个权重 - w[i]。选择数字 i 的概率是w(i)/sum(w).)?
我想用这样的东西
randsample([0 1],1,true,[0.2 0.8]);
【问题讨论】:
-
我不知道有没有东西。但是写一个应该很容易。能不能更清楚的告诉我们
[0 1], 1, true and [p1 p2]这个参数代表什么? -
您是否要为一组数字求加权平均值?就像你想计算重量/长度的加权平均值一样?所以是这样的:(sum (weight * length))/ (sum (length))?
-
是的,我想计算加权平均值,即在 y = randsample(...,true,w) 中选择数字 i 作为输出 y[i] 条目的概率是 w( i)/总和(w)。例如,如果 matlab 中的默认示例是 R = randsample('ACGT',48,true,[0.15 0.35 0.35 0.15]) 并且它返回 R = TCGCTGCAGCGGTGCCTTCTACGAACCGCCAGCTCCGGCGGAGCGGGC
-
true 表示有放回抽样,默认为 'false' 表示无放回抽样