【发布时间】:2016-03-09 14:46:57
【问题描述】:
我正在使用与以下摘录相对应的导入数据集:
set.seed(1)
dta <- data.frame("This is Column One" = runif(n = 10),
"Another amazing Column name" = runif(n = 10),
"!## This Columns is so special€€€" = runif(n = 10),
check.names = FALSE)
我正在使用dplyr 对这些数据进行一些清理,并且我想将列名更改为语法正确的列名并删除标点符号作为第二步。到目前为止我尝试了什么:
dta_cln <- dta %>%
rename(make.names(names(dta)))
产生错误:
> dta_clean <- dta %>% + rename(make.names(names(dta))) Error: All arguments to rename must be named.
想要的结果
我想要实现的可以在base中完成:
names(dta) <- gsub("[[:punct:]]","",make.names(names(dta)))
会返回:
> names(dta) [1] "ThisisColumnOne" "AnotheramazingColumnname" "XThisColumnsissospecial"
我想达到同样的效果,但使用dyplr 和%>%。
【问题讨论】: