如何在 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+ 次瀏覽

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.