0

假设我有一个矩阵:

 a=matrix(1:30,5)

我想粘贴 3 到 3 列来得到这个结果:

                [,1]                  [,2]
[1,]    "1     6    11"    "16   21   26"
[2,]   " 2     7    12"    "17   22   27"
[3,]   " 3     8    13"    "18   23   28"
[4,]    "4     9    14"    "19   24   29"
[5,]   " 5   10   15"   " 20   25   30"

事实上,我需要一个非常大的矩阵的函数。

对于一个简单的示例,我们可以使用whitinand paste (将多个列值粘贴到 R 中的一个值中)。

4

1 回答 1

2

试试这个:

> g <- rep(1:2, each = 3)
> t(apply(a, 1, tapply, g, paste, collapse = " "))
     1         2         
[1,] "1 6 11"  "16 21 26"
[2,] "2 7 12"  "17 22 27"
[3,] "3 8 13"  "18 23 28"
[4,] "4 9 14"  "19 24 29"
[5,] "5 10 15" "20 25 30"
于 2013-09-07T04:18:50.750 回答