【问题标题】:Creation matrices with a loop in R在 R 中创建带有循环的矩阵
【发布时间】:2014-04-13 11:26:44
【问题描述】:

您好,我想创建 15 个具有不同列的矩阵,我尝试了此代码

for(i in 1:15){Di=matrix(0,i,1000)}
for(i in 1:15){for(k in 1:i){for(j in 1:1000){Di[k,j]=runif(1,-1,1)}}}

Di 没有为我创建 D1、D2 与矩阵 Di 保持为一个完整的矩阵,我如何创建 15 个不同的矩阵?

【问题讨论】:

  • 谢谢,但现在 l[2] 应该有 2 列,我该怎么做我想要 l[1] 有 1 列 1000 行,l[2] 有 2 列 1000 行等等继续

标签: r loops matrix


【解决方案1】:

您应该为此使用list

 l <- vector(mode="list", length=15)

 for (i in seq(along=l)) {
   l[[i]] <- matrix(runif(i*1000, -1, 1), nrow=1000, ncol=i)
 }

【讨论】:

  • 谢谢,但现在 l[2] 应该有 2 列,我该怎么做我想要 l[1] 有 1 列 1000 行,l[2] 有 2 列 1000 行等等继续
  • 抱歉,最后一个问题是我如何才能到达例如 l[4] row 500 column 3?
  • @user3528850 matrix(runif((i-1)*500, -1, 1), nrow=500, ncol=(i-1))?
  • 我的意思是在创建后我只想直接读取 l[a] 行 b 和 c 的值,我的意思是像 l[a,b,c] 或类似的东西我只想得到值,对不起,如果这是一个虚拟问题
  • 我使用您的代码创建了矩阵,现在我只想读取值 l[a] a 列和 b 行
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-09-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-10-30
  • 1970-01-01
相关资源
最近更新 更多