-5

我有一个嵌套列表 ( FCdat.pp.con[[x]][[y]]),其中单独的列保存矩阵的值(对于每个 x 和嵌套的 y)。现在我想通过写入数据帧来制作矩阵。

但是,我没有成功地在双 for 循环中为矩阵提供正确的名称。目前,我只成功地用关于“x”的信息制作了矩阵,但没有用关于“y”的信息制作矩阵。请帮助我或建议另一种方法来做到这一点。

for (x in 1:36){
    for (y in 1:5){
        cells <- c(0,
                   FCdat.pp.con[[x]][[y]]$A12,
                   FCdat.pp.con[[x]][[y]]$A13,
                   FCdat.pp.con[[x]][[y]]$A14,
                   FCdat.pp.con[[x]][[y]]$A21,0,
                   FCdat.pp.con[[x]][[y]]$A23,
                   FCdat.pp.con[[x]][[y]]$A24,
                   FCdat.pp.con[[x]][[y]]$A31,
                   FCdat.pp.con[[x]][[y]]$A32,
                   0,
                   FCdat.pp.con[[x]][[y]]$A34,
                   FCdat.pp.con[[x]][[y]]$A41,
                   FCdat.pp.con[[x]][[y]]$A42,
                   FCdat.pp.con[[x]][[y]]$A43,
                   0)
        rnames <- c("ALG1","ALG2","ALG3","ALG4")
        cnames <- c("ALG1","ALG2","ALG3","ALG4")
        Ind.matr <- t(matrix(cells, nrow=4, ncol = 4))
        dimnames(Ind.matr)=list(rnames, cnames)
        assign(paste0("Indmatr", x), Ind.matr)

    }
}
4

1 回答 1

0

在循环开始之前添加:result <- lapply(1:36, function(.)vector("list",5))

然后替换assign(paste0("Indmatr", x), Ind.matr)result[[x]][[y]] <- Ind.matr.

于 2013-03-30T05:23:23.203 回答