如何在 R 中将一行转换为列名?


要将一行转换为列名,我们可以按照以下步骤操作:

  • 首先,创建一个数据框。

  • 使用 colnames 函数和数据框的子集将该行转换为列名。

创建数据框

让我们创建一个如下所示的数据框:

 在线演示

x<-c(round(rnorm(24),1),"x1")
y<-c(round(rnorm(24),1),"x2")
z<-c(round(rnorm(24),1),"x3")
df<-data.frame(x,y,z)
df

执行上述脚本后,将生成以下输出(由于随机化,此输出将在您的系统上有所不同):

输出

     x    y    z
1  -0.6  0.3  0.3
2   0    0.7 -1.6
3   0.5  0.4 1.5
4  -0.6 -0.5 0.2
5   0    0   0.7
6  -0.7  0.2 0.1
7  -0.1  0.2 -0.8
8  -0.9 -2.4  0.6
9   0    1.8  0.2
10 -2.8  0.7 1.3
11 -1.4 -0.6 -0.1
12 -1   -0.5    0
13 -1.7  0.3 0.2
14 -0.2 -0.4 0.8
15  1.2  0.5 -2.1
16  0.6 -1.1 0.7
17 -0.4  1.5 1.1
18  0    0 -0.4
19 -0.7 -0.9 1.2
20  1.1 -1.6 -0.8
21  0.3  1.8 1.6
22  2.1 -0.5 -0.5
23 -0.4 -0.3 0.2
24  0.2 -0.3 1.1
25  x1   x2  x3

将一行转换为列名

使用 colnames 函数和带单方括号的子集将第 25 行转换为列名:

 在线演示

x<-c(round(rnorm(24),1),"x1")
y<-c(round(rnorm(24),1),"x2")
z<-c(round(rnorm(24),1),"x3")
df<-data.frame(x,y,z)
colnames(df)<-df[25,]
df<-df[-25,]
df

输出

    x1  x2    x3
1  -0.6  0.3  0.3
2   0    0.7 -1.6
3   0.5  0.4  1.5
4  -0.6 -0.5  0.2
5   0    0    0.7
6  -0.7  0.2  0.1
7  -0.1  0.2 -0.8
8  -0.9 -2.4  0.6
9   0    1.8  0.2
10 -2.8  0.7  1.3
11 -1.4 -0.6 -0.1
12 -1   -0.5  0
13 -1.7  0.3  0.2
14 -0.2 -0.4  0.8
15  1.2  0.5 -2.1
16  0.6 -1.1  0.7
17 -0.4  1.5  1.1
18  0    0    -0.4
19 -0.7 -0.9 1.2
20  1.1 -1.6 -0.8
21  0.3  1.8 1.6
22  2.1 -0.5 -0.5
23 -0.4 -0.3 0.2
24  0.2 -0.3 1.1

更新于: 2021年8月11日

3K+ 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告