多項分布からサンプリングしたいと思います。サンプルを使用していくつかの確率を指定することでこれを行います。例: 3 つのカテゴリがあり、10 回サンプリングしたいと考えています。
> my_prob = c(0.2, 0.3, 0.5)
> x = sample(c(0:2), 100, replace = T, prob = my_prob)
> head(x)
[1] 2 0 2 1 1 2
私の設定は、次の点でのみ異なります: 多くの (1e09 など) の数値をサンプリングしたい。実際、私は各カテゴリの頻度にのみ関心があります。したがって、上記の例では、これは次のことを意味します。
> table(x)
x
0 1 2
27 29 44
これをできるだけ効率的に計算する方法を知っている人はいますか?
ありがとう、ステフィ