全国大学生市场调研大赛-数据分析
数据的预处理 删除答题时间小于1分钟的 对异常数据进行一些修改 检查有没有重复的问卷 保留研究所需要的列 处理公共题目缺失值 把数据分为总数据df,来过游客的数据df_gone,没有来过游客的数据df_not_gone,所有原始信息保留 对于df_gone和df_not_gone分别应用孤立森林清洗异常问卷 得到最后的数据集df, df_gone, df_not_gone import pandas as pd df = pd.read_csv('乌蒙大草原旅游问卷调查_final.csv') print(df.shape) df.head() 这两段代码主要是排除答题时间小于60s的问卷,不过问卷网上可以直接进行筛选 # 先把答题时间转换为时间格式 def convert_to_seconds(time_str): if '分' in time_str: minutes, seconds = time_str[:-1].split('分') return int(minutes) * 60 + int(seconds) else: return int(time_str[:-1]) df['答题时长'] = df['答题时长'].astype(str) df['答题时长'] = pd.to_timedelta(df['答题时长'].apply(convert_to_seconds), unit='s') # 删除答题时间小于1分钟的数据 df = df[df['答题时长'] > '00:01:00'] print(df.shape) df.head() 针对Q2年龄的一些数据问题进行处理 import seaborn as sns import matplotlib.pyplot as plt # 查看Q2有没有非数字的数据 df['Q2'].unique() # 修改数据 df['Q2'] = df['Q2']....