首页 > 解决方案 > 将列表保存为矩阵的元素

问题描述

我正在尝试将列表添加为矩阵的元素。我正在使用以下代码

wiip <- matrix(list(), 5, 5)
for (i in colnames(wave1)) {
    for (j in colnames(wave1)) {
        wiip[[i,j]] <- gclo(wave1[[i]], wave1[[j]])
    }
}

表示wiip[[i,j]]下标越界。函数 gclo 的输出是一个列表,我想保存所有输出。也就是说,双循环创建 i*j(i 运行 1 到 5,j 也是如此,因此创建了总共 25 个列表对象)列表数量。如何将每个列表一起保存在一个对象中。

标签: rlistmatrix

解决方案


尝试将结果保存在列表中并使用[, i][,j]对矩阵的每一列进行子集化。

wiip <- vector('list', ncol(wave1)*ncol(wave1))
ind <- 0

for (i in colnames(wave1)) {
  for (j in colnames(wave1)) {
    ind <- ind + 1
    wiip[[ind]] <- gclo(wave1[, i], wave1[, j])
  }
}

推荐阅读