【发布时间】:2020-09-11 17:14:22
【问题描述】:
我有一个创建情节的功能。但是,我想在函数中包含一些预处理,以使用 sjlabelled 包将值转换为标签。
library(haven)
data <- read_spss("http://staff.bath.ac.uk/pssiw/stats2/SAQ.sav")
library(dplyr)
library(labelled)
library(sjlabelled)
bar_plot <- function(data, var) {
data %>%
as_label(var) %>%
filter({{var}} != "Neither") %>%
ggplot(aes({{var}})) +
geom_bar() +
coord_flip() +
theme_classic() +
labs(x = NULL, y = "Count", title = var_label(pull(data, {{var}})))
}
bar_plot(data, Q01)
我得到了一个情节,但它不正确,我在控制台中收到此错误1 variables were not found in the dataset: var
我尝试使用curly-curly、eval、!!、sym、ensym,但它们都不起作用。
问题出在这一行:as_label(var) %>%
【问题讨论】: