2016-10-03 320 views
-4

假设我有3个矩阵的列表。 如何提取其中一个矩阵作为矩阵对象,以便我可以通过mymatrix[i,j]调用进一步访问它的元素?从矩阵列表中提取矩阵

mylist[i]只是返回一个列表对象与矩阵i

我确定必须有一个简单的解决方案,但我找不到一个解决方案。

回答

2

使用双括号:mylist[[i]] ....

?"[["(强调):

递归(列表类似的)对象:

索引由 '[' 类似于原子矢量并选择列表 指定的元素

'[['和'$'选择列表中的单个元素。主要 不同的是,“$”不允许计算的指数,如果你想你这个自动

+0

这是令人尴尬的简单。谢谢 ... –

2

mylist[[1]]应该回到你的第一矩阵

mylist[[3]]应该回到你的第三矩阵

1

可以简单地运行:

for (index in 1:length(mylist)){ 
    assign(paste0("matrix", index), mylist[[index]], envir = .GlobalEnv) 
}