让我有以下数据框。
df.open<-c(1,4,5)
df.close<-c(2,8,3)
df<-data.frame(df.open, df.close)
> df
df.open df.close
1 1 2
2 4 8
3 5 3
Run Code Online (Sandbox Code Playgroud)
我想更改包含“a”的“打开”和包含“b”的“关闭”的列名:
即我想获得以下数据框:
a b
1 1 2
2 4 8
3 5 3
Run Code Online (Sandbox Code Playgroud)
我有很多这样的数据框。预值(这里是“df”)正在改变,但“打开”和“关闭”是固定的。
非常感谢。
我们可以创建一个重用的函数
f1 <- function(dat) {
names(dat)[grep('open$', names(dat))] <- 'a'
names(dat)[grep('close$', names(dat))] <- 'b'
dat
}
Run Code Online (Sandbox Code Playgroud)
并应用在数据上
df <- f1(df)
Run Code Online (Sandbox Code Playgroud)
-输出
df
a b
1 1 2
2 4 8
3 5 3
Run Code Online (Sandbox Code Playgroud)
如果这些数据集在 list
lst1 <- list(df, df)
lst1 <- lapply(lst1, f1)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
39 次 |
最近记录: |