r - 使用 R 从 SPSS 文件创建多个响应集问题
问题描述
我是 R 新手。我目前正在使用 PHP 和 R 脚本创建交叉表。我正在使用 MRSET 函数来创建多个响应问题,但我没有得到标签和数据。它只显示从 PHP 代码传递的问题编号。我尝试了以下...
setwd('/files/are/inside/this/PATH/SPSS')
library(foreign)
library(expss)
expss_output_viewer()
mydata = read.spss("SPSS123456.sav", stringsAsFactors = FALSE,reencode=FALSE)
w <- data.frame(mydata)
args <- commandArgs(TRUE)
Ques<-as.character(args[1]) ## number of beds
Ban<-as.character(args[2])
Ques_Vec = strsplit(Ques, ',')[[1]]
Ban_Vec = strsplit(Ban, ',')[[1]]
temp1 <- w[c(Ques_Vec)]
temp2 <- w[c(Ban_Vec)]
Banner1 = w %>%
tab_cells(mrset(as.category(temp1))) %>%
tab_cols(total(),mrset(as.category(temp2))) %>%
tab_stat_cases(total_row_position = "none",label = "")
#tab_pivot(Banner1)
Banner2 = w %>%
tab_cells(mrset(as.category(temp1))) %>%
tab_cols(total(),mrset(as.category(temp2)))%>%
tab_stat_cpct(total_row_position = "below",label = "")%>%
tab_last_sig_cpct(sig_labels = paste0("<span style='color:red'>",LETTERS, "</b>"))
tab_pivot(Banner2)
谁能告诉我哪里出错了。我对 CSV 文件进行了同样的尝试,效果很好。除了这些多选问题外,单选问题效果很好。
例如,这是我得到的结果......
Total cases Q13_1 Q13_2 Q13_3
Total 0 0 0 0
0% 0% 0% 0%
Q12_1 0 0 0 0
0% 0% 0% 0%
Q12_2 0 0 0 0
0% 0% 0% 0%
Q12_3 0 0 0 0
0% 0% 0% 0%