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

要将行转换为 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

执行时,上述脚本生成以下内容output(this output will vary on your system due to randomization)-

输出结果

     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

猜你喜欢