如何减少 R 中数组的维数
How to reduce the dimensions of an array in R
我有一个 4 维数组 c(12000, 100, 20, 4)
,我想将两个维度合并为一个(第二个和第三个)以创建一个新的 3 维数组 c(12000, 2000, 4)
。
当使用二维数组时,我使用的函数是as.vector
,但我无法使用更大的数组。有没有类似apply
的函数?
谢谢
一些示例数据:
x <- array(1:(12000*100*20*4), dim=c(12000, 100, 20, 4))
dim(x)
[1] 12000 100 20 4
使用 R.utils
中的 wrap
合并除 1 和 4 之外的所有维度 (NA
):
library(R.utils)
y <- wrap(x, map=list(1, NA, 4))
dim(y)
[1] 12000 2000 4
我有一个 4 维数组 c(12000, 100, 20, 4)
,我想将两个维度合并为一个(第二个和第三个)以创建一个新的 3 维数组 c(12000, 2000, 4)
。
当使用二维数组时,我使用的函数是as.vector
,但我无法使用更大的数组。有没有类似apply
的函数?
谢谢
一些示例数据:
x <- array(1:(12000*100*20*4), dim=c(12000, 100, 20, 4))
dim(x)
[1] 12000 100 20 4
使用 R.utils
中的 wrap
合并除 1 和 4 之外的所有维度 (NA
):
library(R.utils)
y <- wrap(x, map=list(1, NA, 4))
dim(y)
[1] 12000 2000 4