有没有办法用一个表达式来实现以下目的?:
copy_of_df <- df
names(copy_of_df) <- c("some", "new", "column", "names", ...)
Run Code Online (Sandbox Code Playgroud)
例如,从df下面定义开始
> set.seed(0)
> h <- 5
> (df <- data.frame(x = 1, y = 1:h, z = sample(LETTERS[1:3], h, replace = T)))
x y z
1 1 1 C
2 1 2 A
3 1 3 B
4 1 4 B
5 1 5 C
Run Code Online (Sandbox Code Playgroud)
...我可以复制df并重命名副本的列,如下所示:
> copy_of_df <- df
> names(copy_of_df) <- c("P", "Q", "R")
> copy_of_df
P Q R
1 1 1 C
2 1 2 A
3 1 3 B
4 1 4 B
5 1 5 C
Run Code Online (Sandbox Code Playgroud)
可以使用单个表达式实现相同的复制+重命名操作吗?
我们可以用 setNames
copy_of_df <- setNames(df, c("P", "Q", "R"))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3397 次 |
| 最近记录: |