标准化处理之后的问卷数据预处理
标准化处理之后的问卷如下图所示,本文主要聚焦于多选题的分析
此时想要收集选每个选项的人数以作后续分析
1.导入excel数据
import pandas as pd
df = pd.DataFrame(pd.read_excel('C:/Users/15643/Desktop/wenjuan.xls'))
j=0
x_pre1 = []
x_pre2 = []
2.构建for循环遍历excel里每一个选项列,并对每一个选项进行计数
for i in range(1,8):
num =j+i
index = 'Q16_'+str(num)
data_set = np.array(df[index])
data_set_lists = data_set.tolist()
from collections import Counter
result = Counter(data_set_lists)
由于Counter返回的是一个字典对象,要将这个转换为列表才更方便进行分析
for m in result.keys():
x_pre1.append(m)
x_pre2.append(result[m])
3.结果输出
x_pre =np.column_stack([x_pre2, x_pre1])
print(x_pre)
x_pre = pd.DataFrame(x_pre)
x_pre.to_excel('C:/Users/15643/Desktop/wenjuan_result.xls',sheet_name='test')
以下为全部代码
import numpy as np
import pandas as pd
df = pd.DataFrame(pd.read_excel('C:/Users/15643/Desktop/wenjuan.xls'))
j=0
x_pre1 = []
x_pre2 = []
for i in range(1,8):
num =j+i
index = 'Q16_'+str(num)
data_set = np.array(df[index])
data_set_lists = data_set.tolist()
from collections import Counter
result = Counter(data_set_lists)
#result=pd.value_counts(data_set_lists)
print(result)
for m in result.keys():
x_pre1.append(m)
x_pre2.append(result[m])
x_pre =np.column_stack([x_pre2, x_pre1])
print(x_pre)
x_pre = pd.DataFrame(x_pre)
x_pre.to_excel('C:/Users/15643/Desktop/wenjuan_result.xls',sheet_name='test')
data_pos = pd.DataFrame(data_pos)
data_pos.to_excel('C:/Users/15643/Desktop/1.xls',sheet_name='test')
'''
随后在excel中对数据进行进一步处理,对每个选项score数据进行平均,生成每个选项的 new score,然后绘制雷达图;下图为结果