R语言-13一键统计表格每列数据
2019-05-20 本文已影响0人
周一ing
实现效果
需要统计问卷数据表
B4为单选题
B7_1_1a到B7_1_7其实是同一个问题,然后每一列是一个选项是否选择,选择了的话该列的值就是该选项
统计结果:
利用count函数与for循环对excel多列统计
library(openxlsx)
#result存放统计结果
result<-data.frame()
for(i in c(13:447)){
count <-table(data[i])
count<-data.frame(count)
result <- rbind(result,count)
name0 <- names(data[i])
name <- names(data[i+1])
if(grepl('_',name)){
#如果当时的问卷数据多选题有很多列是同一个问题,所以G9_1a和G9_2a,G9_2a就不新添加名字了了
a1 <- as.character(unlist(strsplit(name0,split="_"))[1])
a2 <- as.character(unlist(strsplit(name,split="_"))[1])
if(a1!=a2){
flag <- data.frame(Var1=name,Freq='-----')
result<-rbind(result,flag)
}
}else{
flag <- data.frame(Var1=name,Freq='-----')
result<-rbind(result,flag)
}
}
write.xlsx(result,file = "resultV1.xlsx")
···