我想知道在R中是否有一种“正确”的方法来对大型矩阵对象进行子集操作。虽然对矩阵进行子集操作很简单,但是该类别总是回退到“matrix”。在处理小型数据集时这不是问题,但是在处理极大型数据集时,子集仍可以从“big.matrix”类别中受益。
require(bigmemory)
data(iris)
# I realize the warning about factors but not important for this example
big <- as.big.matrix(iris)
class(big)
[1] "big.matrix"
attr(,"package")
[1] "bigmemory"
class(big[,c("Sepal.Length", "Sepal.Width")])
[1] "matrix"
class(big[,1:2])
[1] "matrix"