如果 R 中方阵的行列名相同,则在一行代码中定义它们。

r programmingserver side programmingprogramming

如果我们有一个方阵,或者我们想要创建一个方阵,并且这个矩阵的行名和列名相同,那么我们可以在一行代码中定义这些名称。

例如,如果我们有一个名为 M 的矩阵,它有 10 行和 10 列,前十个字母作为行名和列名,那么我们可以将列名定义为 colnames(M)<-rownames(M)<-LETTERS[1:10]。

示例 1

考虑下面给出的矩阵 −

M1<-matrix(rpois(25,5),ncol=5)
M1

创建以下数据框

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

要定义上面创建的数据框中 M1 的列名和行名,请将以下代码添加到上面的代码片段中 −

M1<-matrix(rpois(25,5),ncol=5)
colnames(M1)<-rownames(M1)<-LETTERS[1:5]
M1

输出

如果将上述所有代码片段作为单个程序执行,则会生成以下输出 −

  A B C D E
A 3 5 7 6 6
B 8 6 6 6 4
C 2 6 2 8 7
D 1 3 5 9 4
E 3 6 6 7 3

示例 2

考虑下面给出的矩阵 −

M2<-matrix(rpois(25,50),ncol=5)
M2

创建以下数据框

   [,1] [,2] [,3] [,4] [,5]
[1,] 54   40   53   42   51
[2,] 59   44   54   67   55
[3,] 51   42   54   47   55
[4,] 68   38   37   47   39
[5,] 35   52   53   58   51

要定义上面创建的数据框中 M2 的列名和行名,请将以下代码添加到上面的代码片段中 −

M2<-matrix(rpois(25,50),ncol=5)
colnames(M2)<-rownames(M2)<-c("Asia","Americas","Africa","Europe","Oceania")
M2

输出

如果将上述所有代码片段作为一个程序执行,则会生成以下输出 −

       Asia Americas Africa Europe Oceania
Asia     54       40     53     42      51
Americas 59       44     54     67      55
Africa   51       42     54     47      55
Europe   68       38     37     47      39
Oceania  35       52     53     58      51

示例 3

考虑以下矩阵

M3<-matrix(round(rnorm(25),2),ncol=5)
M3

创建以下数据框

       [,1] [,2]  [,3]  [,4]  [,5]
[1,]  0.68 -0.35  0.76 -0.22  0.36
[2,] -0.42 -0.28 -0.63  0.09  1.22
[3,]  0.05 -0.91  1.21 -0.17  0.86
[4,]  0.99 -0.71 -0.20 -0.58 -0.02
[5,] -0.21 -1.43  1.45 -0.26 -1.51

要定义上面创建的数据框中 M3 的列名和行名,请将以下代码添加到上面的代码片段中 −

M3<-matrix(round(rnorm(25),2),ncol=5)
colnames(M3)<-rownames(M3)<-c("Rate1","Rate2","Rate3","Rate4","Rate5")
M3

输出

如果将上述所有代码片段作为一个程序执行,则会生成以下输出 −

      Rate1 Rate2 Rate3 Rate4 Rate5
Rate1  0.68 -0.35  0.76 -0.22  0.36
Rate2 -0.42 -0.28 -0.63  0.09  1.22
Rate3  0.05 -0.91  1.21 -0.17  0.86
Rate4  0.99 -0.71 -0.20 -0.58 -0.02
Rate5 -0.21 -1.43  1.45 -0.26 -1.51

示例 4

考虑下面给出的矩阵 −

M4<-matrix(round(rnorm(25,500,),0),ncol=5)
M4

创建以下数据框

    [,1] [,2] [,3] [,4] [,5]
[1,] 499  500  499  498  502
[2,] 501  501  501  501  499
[3,] 499  500  501  503  500
[4,] 501  502  500  500  501
[5,] 500  499  500  500  502

要定义上面创建的数据框中 M4 的列名和行名,请将以下代码添加到上面的代码片段中 −

colnames(M4)<-rownames(M4)<-c("Score1","Score2","Score3","Score4","Score5")
M4

输出

如果将上述所有代码片段作为一个程序执行,则会生成以下输出 −

       Score1 Score2 Score3 Score4 Score5
Score1    499    500    499    498    502
Score2    501    501    501    501    499
Score3    499    500    501    503    500
Score4    501    502    500    500    501
Score5    500    499    500    500    502

示例 5

考虑下面给出的矩阵 −

M5<-matrix(rpois(25,100),ncol=5)
M5

创建以下数据框

    [,1] [,2] [,3] [,4] [,5]
[1,]  92 116   107  100   91
[2,] 111  94   110   95   93
[3,]  87  98    91   88  107
[4,] 106  91    98   94  104
[5,]  97  94   108  104  102

要定义上面创建的数据框中 M5 的列名和行名,请将以下代码添加到上面的代码片段中 −

M5<-matrix(rpois(25,100),ncol=5)
colnames(M5)<-rownames(M5)<-c("Sour","Salty","Meaty","Sweet","Bitter")
M5

输出

如果将上述所有代码片段作为一个程序执行,则会生成以下输出 −

     Sour Salty Meaty Sweet Bitter
Sour   92   116   107   100     91
Salty 111    94   110    95     93
Meaty  87    98    91    88    107
Sweet 106    91    98    94    104
Bitter 97    94   108   104    102

相关文章