如何在R

时间:2018-02-15 09:21:58

标签: r

我的函数名称中有一个矩阵列表newpar。我想使用cat函数打印此列表。但是,我有一个向量而不是矩阵。

这是我的代码:

 for(i in 1:2)
newpar <- list()
newpar[[i]]<- matrix(0,5,5)

for ( i in 1:2) {
  cat(newpar[[i]], "\t")
}

输出是这样的:     0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

我希望输出为矩阵。

当我使用print函数时,第一个矩阵得到NULL。 我怎样才能解决我的问题?有什么帮助吗?

1 个答案:

答案 0 :(得分:1)

你可以用lapply

创建一个矩阵列表
    > newpar=lapply(1:2,function(x) matrix(0,5,5) )
> newpar
[[1]]
     [,1] [,2] [,3] [,4] [,5]
[1,]    0    0    0    0    0
[2,]    0    0    0    0    0
[3,]    0    0    0    0    0
[4,]    0    0    0    0    0
[5,]    0    0    0    0    0

[[2]]
     [,1] [,2] [,3] [,4] [,5]
[1,]    0    0    0    0    0
[2,]    0    0    0    0    0
[3,]    0    0    0    0    0
[4,]    0    0    0    0    0
[5,]    0    0    0    0    0