如何在 R 中做多项选择交叉表

How to do a multiple choice crosstable in R

我的代码...

library(expss)
library(haven)
X4707 <- read_sav("/home/cfmc/4707/data/4707.sav")
X4707 %>% 
    tab_cells("By phone"=qpd4_1==1,"By email"=qpd4_2==1,"Utility website"=qpd4_3==1,"Roseville Electric notification"=qpd4_4==1,"Social media"=qpd4_5==1,"Text"=qpd4_6==1,"Not sure"=qpd4_8==1) %>% 
    tab_cols(total(), qf5) %>% 
    tab_stat_cpct() %>% 
    tab_last_sig_cpct() %>% 
    tab_pivot()

我的输出看起来像这样...

我希望输出仅包含存根下的代码文本(通过 phone、通过电子邮件等),而不包含 TRUE、FALSE 等

您需要指定您想要多重响应。你有位置编码的多项选择,所以你需要 mdset (m(Multiple) d(ichotomy) set) function:

library(expss)
library(haven)
X4707 <- read_sav("/home/cfmc/4707/data/4707.sav")
X4707 %>% 
    tab_cells(mdset("By phone"=qpd4_1==1,"By email"=qpd4_2==1,"Utility website"=qpd4_3==1,"Roseville Electric notification"=qpd4_4==1,"Social media"=qpd4_5==1,"Text"=qpd4_6==1,"Not sure"=qpd4_8==1)) %>% 
    tab_cols(total(), qf5) %>% 
    tab_stat_cpct() %>% 
    tab_last_sig_cpct() %>% 
    tab_pivot()