我目前正试图找到一种快速方法来解决我在R中的问题而不使用循环。R通过重复矩阵填充3D阵列
我有一个大小为N x m的矩阵A.
我想从它得到的数组B,其大小是N * M * 5,的其中B [,, I] = A对于所有0 <我< 6.
我已经不成功地试图使用rep功能,但我不能让它输出一个3D数组。 有没有办法做到这一点,或者我应该手动分配每个值?
在此先感谢。
我目前正试图找到一种快速方法来解决我在R中的问题而不使用循环。R通过重复矩阵填充3D阵列
我有一个大小为N x m的矩阵A.
我想从它得到的数组B,其大小是N * M * 5,的其中B [,, I] = A对于所有0 <我< 6.
我已经不成功地试图使用rep功能,但我不能让它输出一个3D数组。 有没有办法做到这一点,或者我应该手动分配每个值?
在此先感谢。
我们可以使用replicate
得到输出作为array
replicate(5, A)
你可以只是包装array
角落找寻矩阵和“扩展”尺寸的需要数量作为dim
-argument中的最后一项,并矩阵值将被“回收”:
B <- array(matrix(1:6, 2, 3), c(2,3,5))
什么是所有0的B [,, i] = A'?你有没有试过'复制(5,A)' – akrun
谢谢,我修好了,它已经被剪掉了。 我试过你说的,它的工作原理,非常感谢你这正是我想要的 –