[英]Matrix as element of a dataframe in R
我有一个遍历元素列表的 lapply 函数。 对于每个元素,结果是一个矩阵。 基于元素列表和矩阵列表,我想返回表单的数据框列表
element1, matrix1
element2, matrix2
...
...
elementn, matrixn
例子:
e <- list(1,2)
r <- lapply(e, function(x) matrix(ncol = x, nrow = x))
我想得到一个包含这些元素的列表
(1, matrix(1x1))
(2, matrix(2x2))
您可以在lapply
函数中构造数据框,使用I(list(...))
可以将矩阵包装为数据框中的一个元素:
r <- lapply(e, function(x) data.frame(element = x, mat = I(list(matrix(ncol = x, nrow = x)))))
这给出了数据框的列表:
r
# [[1]]
# element mat
# 1 1 NA
# [[2]]
# element mat
# 1 2 NA, NA, ....
您可以将结果与do.call(rbind, ...)
一起使用:
do.call(rbind, r)
# element mat
# 1 1 NA
# 2 2 NA, NA, ....
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.