如何将矩阵转换为R中的单列矩阵?

如果我们有一个矩阵,则出于某些分析目的,可能希望将其转换为单列矩阵,例如与矩阵中长度等于元素总数的向量相乘。因此,可以通过使用矩阵函数本身将矩阵转换为单列矩阵,但是为此,我们需要使列名和行名无效。

例1

> M1<-matrix(rnorm(20),nrow=5)

> M1

输出结果

        [,1]        [,2]       [,3]      [,4]

[1,] -0.8067677 1.9855697 -2.5012312 1.01283626

[2,] -0.5107091 0.4632027 -1.3966282 0.02534344

[3,] -0.5564871 0.2924344 -0.8991352 -0.50715002

[4,] 0.2411252 -0.5139827 -1.3272964 -0.50694324

[5,] -0.5753370 -1.2357388 0.2028664 0.26498877

示例

> matrix(M1,dimnames=list(t(outer(colnames(M1),rownames(M1),FUN=paste)),NULL))

输出结果

         [,1]

[1,] -0.80676768

[2,] -0.51070906

[3,] -0.55648712

[4,] 0.24112516

[5,] -0.57533702

[6,] 1.98556973

[7,] 0.46320275

[8,] 0.29243441

[9,] -0.51398265

[10,] -1.23573882

[11,] -2.50123125

[12,] -1.39662824

[13,] -0.89913524

[14,] -1.32729635

[15,] 0.20286643

[16,] 1.01283626

[17,] 0.02534344

[18,] -0.50715002

[19,] -0.50694324

[20,] 0.26498877

例2

> M2<-matrix(rpois(20,5),ncol=2)

> M2

输出结果

[,1] [,2]

[1,] 6 1

[2,] 6 7

[3,] 4 5

[4,] 6 5

[5,] 4 5

[6,] 5 4

[7,] 4 9

[8,] 4 6

[9,] 3 6

[10,] 8 10

示例

> matrix(M2,dimnames=list(t(outer(colnames(M2),rownames(M2),FUN=paste)),NULL))

输出结果

[,1]

[1,] 6

[2,] 6

[3,] 4

[4,] 6

[5,] 4

[6,] 5

[7,] 4

[8,] 4

[9,] 3

[10,] 8

[11,] 1

[12,] 7

[13,] 5

[14,] 5

[15,] 5

[16,] 4

[17,] 9

[18,] 6

[19,] 6

[20,] 10

例子3

> M3<-matrix(sample(0:9,20,replace=TRUE),ncol=10)

> M3

输出结果

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

[1,] 2 2 6 1 7 3 8 6 1 2

[2,] 8 0 4 7 8 8 8 2 1 3

示例

> matrix(M3,dimnames=list(t(outer(colnames(M3),rownames(M3),FUN=paste)),NULL))

输出结果

[,1]

[1,] 2

[2,] 8

[3,] 2

[4,] 0

[5,] 6

[6,] 4

[7,] 1

[8,] 7

[9,] 7

[10,] 8

[11,] 3

[12,] 8

[13,] 8

[14,] 8

[15,] 6

[16,] 2

[17,] 1

[18,] 1

[19,] 2

[20,] 3

以上是 如何将矩阵转换为R中的单列矩阵? 的全部内容, 来源链接: utcz.com/z/351414.html

回到顶部