【发布时间】:2011-06-05 05:47:45
【问题描述】:
我有一个矩阵和一个函数,它接受一个向量并返回一个矩阵。我想将该函数应用于矩阵的所有行并将所有结果合并在一起。例如
mat <- matrix(1:6, ncol=2)
f <- function (x) cbind(1:sum(x), sum(x):1)
do.call(rbind, apply(mat, 1, f))
这非常有效,因为返回的矩阵有不同的行数,所以 apply 返回一个列表。但是,如果它们碰巧有相同数量的行,这将不再起作用:
mat <- f(3)
apply(mat, 1, f)
apply 返回一个矩阵,我无法从中得到我想要的结果。是否可以强制申请返回列表或是否有其他解决方案?
【问题讨论】:
标签: r