【发布时间】:2017-06-20 23:44:19
【问题描述】:
我有一个我写的函数,它应该过滤一些值,然后生成一个交叉表。它使用 dplyr filter,select 命令过滤值。
我的问题是,当我将列的名称传递给函数时,我得到一个错误,并且当我将名称作为带有“”的字符串传递时,它不会过滤观察结果。 代码如下:
fnDoCrosstab <- function(a) {
x <- surv_data1 %>% filter(a != "blank") %>% select(a) %>% as.matrix() %>% as.vector()
y <- surv_data1 %>% filter(a != "blank") %>% select(segment_name) %>% as.matrix() %>% as.vector()
CrossTable(x,y, format = "SPSS",prop.chisq = F)
}
fnDoCrosstab(b_thisyear)
【问题讨论】:
-
另请注意,
dplyr来自 with a vignette on Programming with dplyr,其中详细介绍了如何执行此操作。