R按行填充三维数组

时间:2017-04-26 08:43:50

标签: arrays r matrix

我知道有类似的主题,但他们似乎没有回答我的问题。我有一个由矩阵组成的三维数组(10,5)。 我想逐行填充每个矩阵,让我们说1:5。 以前的主题讨论了aperm,但问题在于:由于我的矩阵不对称,所以当我第一次用列填充时,如下所示:

kappa=array(0,dim=c(10,5,2))
kappa[1:10,,1]=1:5
kappa[,,1]


      [,1] [,2] [,3] [,4] [,5]
 [1,]    1    1    1    1    1
 [2,]    2    2    2    2    2
 [3,]    3    3    3    3    3
 [4,]    4    4    4    4    4
 [5,]    5    5    5    5    5
 [6,]    1    1    1    1    1
 [7,]    2    2    2    2    2
 [8,]    3    3    3    3    3
 [9,]    4    4    4    4    4
[10,]    5    5    5    5    5

由于列维度低于行dim,因此将复制序列。因此,当我aperm结果时,它会给出:

aperm(kappa[,,1])

     [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
[1,]    1    2    3    4    5    1    2    3    4     5
[2,]    1    2    3    4    5    1    2    3    4     5
[3,]    1    2    3    4    5    1    2    3    4     5
[4,]    1    2    3    4    5    1    2    3    4     5
[5,]    1    2    3    4    5    1    2    3    4     5

但我想要的是

      [,1] [,2] [,3] [,4] [,5]
 [1,]    1    2    3    4    5
 [2,]    1    2    3    4    5
 [3,]    1    2    3    4    5
 [4,]    1    2    3    4    5
 [5,]    1    2    3    4    5
 [6,]    1    2    3    4    5
 [7,]    1    2    3    4    5
 [8,]    1    2    3    4    5
 [9,]    1    2    3    4    5
[10,]    1    2    3    4    5

0 个答案:

没有答案