有没有办法在R中生成具有正态分布随机值的数据集而不使用循环?每个条目将代表具有正态分布的独立随机变量。使用R生成具有iid正态随机变量的矩阵使用R
回答
要创建N
通过M
矩阵的独立同分布的正态随机变量类型为:
matrix(rnorm(N*M,mean=0,sd=1), N, M)
调整平均值和标准值d偏差。
只要提问者明白N是行数而M是列数,那么他会很好的回答这个问题 – 2012-07-24 23:26:18
@DWin,同意了。虽然在任何情况下提及矩阵时都是常规表示法,对吗? – Macro 2012-07-24 23:26:59
我不太确定。我知道人们有时会对R的矩阵按照列的主要顺序进行填充并调用矩阵来表示惊讶,除非byrow = TRUE。 Ihat让我觉得各种语言的矩阵惯例可能会有所不同。 – 2012-07-24 23:30:46
设mu
是手段的矢量和sigma
标准开发者
mu<-1:10
sigma<-10:1
sample.size<-100
norm.mat<-mapply(function(x,y){rnorm(x,y,n=sample.size)},x=mu,y=sigma)
的向量会产生一矩阵的列保持相关样品
谢谢,这是有效的。 @ cardinal的解决方案要简单得多。 – 2012-07-24 23:36:58
注意:每个条目是独立的。所以你不能避免使用for循环,因为你必须为每个独立变量调用一次rnorm。如果你只是调用rnorm(n * m)这是来自同一随机变量的n * m个采样!
这是错误的,而且令人困惑的是,''norm *(n * m)* *会产生'n * m' **独立的**随机采样,完全按照OP的要求。 – 2013-04-11 19:38:26
可以使用:
replicate(NumbOfColumns,rnorm(NumbOfLines))
可以与其它分布函数替换rnorm
,例如runif
,以产生具有其它分布矩阵。
- 1. R中的随机生成矩阵
- 2. 使用错误生成随机矩阵
- 3. 使用R随机生成数字
- 4. 用R中的双变量伽马分布生成随机数
- 5. 使用R生成向量
- 6. 如何使用AMPL中的正态分布生成一个随机数矩阵?
- 7. 合并矩阵和向量使用R
- 8. R使用示例创建随机数矩阵列
- 9. 使用Matlab计算矩阵sim R R
- 10. R:使用过渡矩阵
- 11. 使用R中列间的成对计算创建矩阵R
- 12. 如何在R中生成具有一定秩的矩阵
- 13. 生成10随机矩阵0和具体数量1
- 14. 如何使用矩阵作为R中的变量创建data.frame?
- 15. 生成具有独立元素的随机矩阵
- 16. 相关矩阵:提取具有高R值的变量
- 17. 使用具有静态变量的随机化吸气剂
- 18. 如何使用Python生成随机N维旋转矩阵?
- 19. Matlab使用随机元素生成矩阵
- 20. R:如何生成这个条件二项式随机变量?
- 21. 随机分配因子变量到不同的组使用r
- 22. [matlab]使用协方差矩阵创建随机高斯变量
- 23. 在矩阵R中随机放置一个向量
- 24. 使用SciPy或NumPy生成具有指定权重的离散随机变量
- 25. R中的加权随机数生成
- 26. 使用R随机化不重复使用R
- 27. Matlab - 为矩阵生成随机坐标
- 28. 生成一个随机矩阵
- 29. RAS算法生成随机矩阵
- 30. 如何生成对称随机矩阵?
对于具有iid $ \ mathcal N(0,1)$条目的$ n \ times p $矩阵,使用'matrix(rnorm(n * p),n)'。 – cardinal 2012-07-24 22:48:33