如何在 R 中將陣列轉換為矩陣?


為了在 R 中將陣列轉換為矩陣,我們可以使用 apply 函式。例如,如果我們有一個名為 ARRAY 的陣列,其中包含 2 個數組元素,那麼我們可以使用命令 apply(ARRAY,2,c) 將此陣列轉換為單個矩陣。我們必須瞭解陣列在進行轉換時的維度,否則輸出將不會達到預期。

示例

考慮以下陣列 −

 即時演示

x1<-array(1:50,dim=c(5,5,2))
x1
, , 1

輸出

    [,1] [,2] [,3] [,4]  [,5]
[1,]  1   6    11   16    21
[2,]  2   7    12   17    22
[3,]  3   8    13   18    23
[4,]  4   9    14   19    24
[5,]  5  10    15   20    25
, , 2
    [,1] [,2] [,3] [,4] [,5]
[1,] 26  31   36   41   46
[2,] 27  32   37   42   47
[3,] 28  33   38   43   48
[4,] 29  34   39   44   49
[5,] 30  35   40   45   50

將 x1 轉換為矩陣 −

示例

apply(x1,2,c)

輸出

    [,1] [,2] [,3] [,4] [,5]
[1,]  1    6   11   16   21
[2,]  2    7   12   17   22
[3,]  3    8   13   18   23
[4,]  4    9   14   19   24
[5,]  5   10   15   20   25
[6,] 26   31   36   41   46
[7,] 27   32   37   42   47
[8,] 28   33   38   43   48
[9,] 29   34   39   44   49
[10,] 30  35   40   45   50

示例

 即時演示

x2<-array(rpois(20,5),dim=c(10,2,2))
x2

輸出

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

將 x2 轉換為矩陣 −

示例

apply(x2,2,c)

輸出

   [,1] [,2]
[1,] 8    7
[2,] 8    9
[3,] 6    6
[4,] 5    5
[5,] 5    6
[6,] 5    7
[7,] 1    3
[8,] 8    7
[9,] 6    3
[10,] 3   2
[11,] 8   7
[12,] 8   9
[13,] 6   6
[14,] 5   5
[15,] 5   6
[16,] 5   7
[17,] 1   3
[18,] 8   7 
[19,] 6   3
[20,] 3   2

更新於: 2021 年 3 月 17 日

4000+ 瀏覽量

開啟你的 事業

透過完成課程獲得證書

開始
廣告