【发布时间】:2016-01-06 00:41:48
【问题描述】:
我有一个问题,基本上是以下 matlab 问题的矢量化 R 解决方案:
Generate random number with given probability matlab
我能够根据随机统一数和每个单个事件的给定概率(总和为 100% - 仅可能发生一个事件)生成随机事件结果:
sum(runif(1,0,1) >= cumsum(wdOff))
但是该函数只接受一个随机统一数字,而我希望它接受一个随机统一数字的向量并为这些条目输出相应的事件。
所以基本上我正在寻找 Matlab 中 Oleg 向量化解决方案的 R 解决方案(从 cmets 到 matlab 解决方案):
“向量化解:sum(bsxfun(@ge, r, cumsum([0, prob]),2) 其中r 是列向量,prob 是行向量。--Oleg”
如果您需要更多信息,请告诉我。
【问题讨论】:
-
如果您确实想在没有
sample()的情况下执行此操作,您可以使用findInterval()...