r - 生成一个总和为 1 的值向量,但元素应该近似但不完全一致
问题描述
假设我想制作一个长度为 N 的向量。我的目标是确保所有元素都大约为 1/N(但并非所有元素都应该正好是 1/N),并且向量的总和应该等于 1。有没有办法在 R 中做到这一点?
解决方案
您可以使用具有大且相等参数的 Dirichlet 分布。
> 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
推荐阅读
- php - Composer 自动加载性能
- cordova - OneSignal 订阅用户?
- postgresql - 复杂匹配和加入 PostgreSQL
- c# - 剃刀视图的预编译
- codeigniter - 是否可以根据数据库school_id将文件夹中的文件移动到不同的子文件夹
- javascript - 为什么 vue-test-utils 找不到子组件?
- c# - 如何将下拉列表的值传递给数据库,反之亦然(ASP.NET C#)
- angular - 我无法从全局组件访问静态变量到我们的组件内部以 Angular 7 订阅
- c# - 如何在 Windows 窗体应用程序中将数据从 UIspy 绑定到 treeView
- flutter - 调用 setState() 时 Flutter ListView 不会改变