【发布时间】:2014-11-06 14:10:51
【问题描述】:
假设我有以下矩阵。
x <- matrix(seq(1:4), 2, 2)
y <- matrix(seq(1:4), 2, 2)
我想做以下事情。
for(i in 1:5)
{
x <- x %*% y
}
但是,这是一个简单的示例。我通常有 X 和 Y 的大矩阵,而且 i 也是一个很大的数字。因此,使用 for 循环可能太耗时了。
是否有人知道对这些类型使用 lapply 或 apply 函数。
谢谢。
【问题讨论】:
-
这是一个 hacky 方式:
replicate(5, x <<- x%*%y)。不知道它会快多少。 -
听起来像是 Rcpp 的工作
-
R 在矩阵运算方面将优于 C++
-
@hedgedandlevered 我喜欢你对 R 的信心。我认为这可能取决于问题的大小,2 和 5 的值。
标签: r matrix apply lapply sapply