Arrays 将2D data.frame转换为3D阵列
我无法将2D数据帧转换为3D数组 如何在R中将42000x784数据帧转换为42000x28x28 3D阵列Arrays 将2D data.frame转换为3D阵列,arrays,r,dataframe,mnist,Arrays,R,Dataframe,Mnist,我无法将2D数据帧转换为3D数组 如何在R中将42000x784数据帧转换为42000x28x28 3D阵列 谢谢 如果这是一个数字矩阵,那么它应该只占用42000*784*10==329280000字节。如果它是一个字符向量,它可能会更大,这取决于基础值中唯一项的数量。我确实尝试使用搜索“[r]矩阵重新标注”来查找重复项,但没有成功,尽管我确实找到了提醒人们使用dim重新标注尺寸的答案,如果这是一个数字矩阵,那么它应该只需要42000*784*10==329280000字节。如果它是一个字符向
谢谢 如果这是一个数字矩阵,那么它应该只占用
42000*784*10==329280000
字节。如果它是一个字符向量,它可能会更大,这取决于基础值中唯一项的数量。我确实尝试使用搜索“[r]矩阵重新标注”来查找重复项,但没有成功,尽管我确实找到了提醒人们使用dim重新标注尺寸的答案,如果这是一个数字矩阵,那么它应该只需要42000*784*10==329280000
字节。如果它是一个字符向量,它可能会更大,这取决于基础值中唯一项的数量。我曾尝试在“[r]矩阵重维度”上搜索,但没有成功,虽然我确实找到了一些答案,提醒人们不要用dimUsedim
重新标注尺寸,也许?就像train_a likeM一样,如果你能添加你迄今为止尝试过的东西,那就更好了。我怀疑没有错误,而是没有正确构建起始矩阵。您应该发布str(train)
的输出。也许可以使用dim
吗?像train\u一样M,如果您可以添加您迄今为止尝试过的内容,那就更好了。我怀疑没有bug,而是无法正确构建起始矩阵。您应该发布str(train)
的输出。
train_a <- train # make copy
dim(train_a) < c(42000,28,28) # re-dimension
mymat <- matrix(1:36, 4,9)
mymat_a <- mymat
dim(mymat_a) <- c(4, 3,3)
> mymat_a
, , 1
[,1] [,2] [,3]
[1,] 1 5 9
[2,] 2 6 10
[3,] 3 7 11
[4,] 4 8 12
, , 2
[,1] [,2] [,3]
[1,] 13 17 21
[2,] 14 18 22
[3,] 15 19 23
[4,] 16 20 24
, , 3
[,1] [,2] [,3]
[1,] 25 29 33
[2,] 26 30 34
[3,] 27 31 35
[4,] 28 32 36