我正在尝试独立选择满足条件的数组元素,然后以给定的频率将这些元素转换为不同的值。在 R 中我会使用 rbinom,但在 Julia 中找不到正确的函数。MWE:
#create array
a = [3,4,3,6,3];
# convert elements that match ==3 to 9
a[a .==3] .=9;
a
[9,4,9,6,9]
但我不知道该怎么做是用二项式概率(可能是伯努利?)的转换,例如,0.66 所以转换a
后可能最终为
[3,4,9,6,9]
我想我想要的是这样的:
a[a .==3] .= bernoulli(0.66)9
这样从 3 转换为 9 的概率是 0.66。所以 66% 的时间它会将 3 转换为 9,而剩下的 33% 则将其保留为 3。有意义吗?
我想对 3 的每个实例独立进行评估,而不是提取所有 3 的索引向量,然后计算有多少以概率转换(如果这有任何意义?!)Thx J