你可以使用以下语法,用dplyr按索引位置重命名数据框架的一列。
方法1:按索引重命名一列
#rename column in index position 1
df %>%
rename(new_name1 = 1)
方法2:按索引重命名多列
#rename column in index positions 1, 2, and 3
df %>%
rename(new_name1 = 1,
new_name2 = 2,
new_name3 = 3)
下面的例子展示了如何在实践中使用这种语法。
例1:通过索引重命名一列
下面的代码显示了如何使用**rename()**函数来按索引位置重命名一列:
library(dplyr)
#create data frame
df <- data.frame(team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'),
points=c(12, 14, 19, 24, 24, 22, 30, 9),
assists=c(4, 6, 6, 8, 3, 7, 8, 11))
#rename column in index position 1
df <- df %>%
rename(team_new = 1)
#view updated data frame
df
team_new points assists
1 A 12 4
2 A 14 6
3 A 19 6
4 A 24 8
5 B 24 3
6 B 22 7
7 B 30 8
8 B 9 11
注意,第一列的名字从team改为team_new,其他列的名字都没有变化。
例2:按索引重命名多列
下面的代码显示了如何使用rename()函数来按索引位置重命名数据框中的多列:
library(dplyr)
#create data frame
df <- data.frame(team=c('A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'),
points=c(12, 14, 19, 24, 24, 22, 30, 9),
assists=c(4, 6, 6, 8, 3, 7, 8, 11))
#rename column in index position 1
df<- df %>%
rename(team_new = 1,
assists_new = 3)
#view updated data frame
df
team_new points assists_new
1 A 12 4
2 A 14 6
3 A 19 6
4 A 24 8
5 B 24 3
6 B 22 7
7 B 30 8
8 B 9 11
索引位置1和3的列名改变了,而索引位置2的列名保持不变。
其他资源
下面的教程解释了如何在dplyr中执行其他常用函数: