Генерация вектора значений, сумма которых равна единице, но элементы должны быть приблизительно, но НЕ точно одинаковыми - PullRequest
0 голосов
/ 05 февраля 2019

Предположим, я хочу создать вектор длины N. Моя цель - убедиться, что все элементы приблизительно равны 1 / N (но не все элементы должны быть точно равны 1 / N), а сумма вектора должна быть равна единице.,Есть ли способ сделать это в R?

1 Ответ

0 голосов
/ 05 февраля 2019

Вы можете использовать распределение Дирихле с большими и равными параметрами.

> library(bayesm)
> rdirichlet(c(100,100,100))
          [,1]
[1,] 0.3360327
[2,] 0.3280179
[3,] 0.3359495
> rdirichlet(c(10000,10000,10000))
          [,1]
[1,] 0.3311760
[2,] 0.3353209
[3,] 0.3335032
> rdirichlet(c(1000000,1000000,1000000))
          [,1]
[1,] 0.3330997
[2,] 0.3334884
[3,] 0.3334119
...