我正在尝试使用下面的代码通过 dplyr 操作这部分数据,但我不断收到错误。
Error in eval(expr, envir, enclos) : object '.' not found
我正在使用的代码,我认为这与通过索引而不是名称引用列有关。
closing <- filter(survey, .[[47]] != 0, .[[48]] >= 10) %>%
mutate(percieved_jobs = .[[47]] * 12, percieved_actual_jobs = (.[[47]] * 12) * (.[[48]] / 100)) %>%
group_by(listing) %>%
summarise(n = n(), mean_closing = mean(.[[48]]), mean_pjobs = mean(percieved_jobs), mean_jobs = mean(percieved_actual_jobs))
谢谢,非常感谢任何帮助。
最佳答案
实际上,错误只是来自您在第一个命令中使用管道的方式。 .
(点)指的是管道中之前的结果,但在您的过滤器
之前没有任何内容,因此会给出错误!
要使其正常工作,您可以将 data.frame 从过滤器函数中取出:
closing <- survey %>% filter(.[[47]] != 0, .[[48]] >= 10) %>% ...
我用另一个数据集测试了它。
关于r - dplyr eval 中的错误(expr、envir、enclos): object '.' not found,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42862223/