【发布时间】:2018-01-19 16:41:35
【问题描述】:
作为 dplyr 及其整洁数据概念的忠实拥护者,我想在数据帧中存在特定变量时对其进行变异。思路是这样的:
# Load libraries
library(dplyr)
# Create data frames
df1 <- data.frame(year = 2000:2010, foo = 0:10)
df2 <- data.frame(year = 2000:2010)
# Create function
cnd_mtt <- function(df){
df %>%
mutate_if(colname == "foo", as.factor) # <---- this is the tricky part
}
预期结果:该函数应该适用于两个数据帧并且没有错误
想法?
【问题讨论】:
-
colname是什么? -
if声明怎么样:if("foo" in names(df)) ... -
@Gregor 必须是
%in%,看我的回答