我想生成符合实际采样数据分布的伪数据。在 C/Obj-C 中寻找一种高效且准确的方法来进行 iphone 开发。目前,在 1000 个采样事件中出现 60 个不同类别的概率已分配为 (0-1)。我想生成 1000 个符合相同概率的新事件。
澄清{
我有一个集合 {1,2,...,60} 的分类分布。我了解此分布中的样本将符合每个类别的概率。因此我需要从这个分布中抽取 1000 个样本。我已经确定(感谢到目前为止的答案)我需要:
通过对这些值求和并将每个值除以总和来规范化此分布。
订购它们。
通过将每个值替换为所有先前值的总和来创建 CDF。
然后我可以生成一个介于0和1之间的均匀随机数,并在CDF中找到其值小于或等于刚刚选择的数的最大数,并返回这个CDF值对应的类别。
}
Q1。这是解决问题的正确方法吗?
Q2。需要注意的是,我使用 NSDecimals 来存储类别概率。Cocoa 或 Math.h 等中是否有任何可用的库或函数可以用来简单地执行此操作?我愿意尝试新的库,目前这个项目中只有 Core-Plot 和标准 Cocoa 库。谢谢。