r - 从列名称作为变量的数据框列中修剪前导/尾随空格
问题描述
我有一个数据框,其中要为空格修剪的列的名称作为变量出现,我无法解析变量以将我指向该列以便可以修剪它。
salary <- c(21000, 23400, 26800)
startdate <- as.Date(c('2010-11-1','2008-3-25','2007-3-14'))
employee <- c(' John Doe ',' Peter Gynn ',' Jolie Hope')
employ.data <- data.frame(employee, salary, startdate)
在这里,我尝试修剪employee
列,并且尝试了 dplyr:
employ.data %>% mutate(employee = trimws(employee))
哪个有效。但是,如果我说:
abc <- "employee"
接着
employ.data %>% mutate(abc= trimws(abc))
它不起作用。
我试过get(abc)
在这个函数中使用,但这也不起作用。
我知道我不能使用abc
whenemploy.data$abc
是abc
一个变量列名。
初始数据帧
employee salary startdate
John Doe 21000 2010-11-01
Peter Gynn 23400 2008-03-25
Jolie Hope 26800 2007-03-14
最终数据框
employee salary startdate
John Doe 21000 2010-11-01
Peter Gynn 23400 2008-03-25
Jolie Hope 26800 2007-03-14
解决方案
利用mutate_at
library(dplyr)
employ.data %>% mutate_at(abc, trimws)
# employee salary startdate
#1 John Doe 21000 2010-11-01
#2 Peter Gynn 23400 2008-03-25
#3 Jolie Hope 26800 2007-03-14
或者你可以直接做,如果你只有一列
employ.data[[abc]] <- trimws(employ.data[[abc]])
如果有多个列,您可以使用lapply
employ.data[abc] <- lapply(employ.data[abc], trimws)
推荐阅读
- vba - IF 语句,IF NOT ...False Vs IF TRUE 之间的区别
- intellij-idea - IntelliJ:在@Sql 注释中注入 SQL 作为语言
- ios - iPad 上的渐变背景 iPhone 尺寸
- javascript - 无法将 MongoDB 文档字段设置为 Null
- scikit-learn - 如何缩小词袋模型?
- angular - index.html 位于 dist/src,但 bundle.js 文件位于 dist。无法找到 bundle.js 文件
- visual-studio - 在 VS 构建事件期间运行批处理时找不到 System32\xyz 文件夹
- python-3.x - 大熊猫拆分为多列
- java - 如何将 jdk 1.8 安装到 jdeveloper 12.1.3.0.0 中
- sql - SQL | SUM 在不同的键上重复