数据文件为 Libreoffice 编制的 ods 类型,为了能直接读取 ods 文件生成 dataframe 格式数据,安装 pandas_ods_reader 包。
1 pip install pandas_ods_reader 然后导入相关库,读取数据。
1 2 3 4 5 6 7 import seaborn as sns import pandas as pd from pandas_ods_reader import read_ods %matplotlib inline ffftime = read_ods('dataset.ods', 1) 1 2 3 # 挑取目标列数据 thedata = ffftime.loc[ffftime['人种']=='黄', ['连续输出1']] print(len(thedata)) 195 目标列中一共有 195 个待分析数据。对这些数据绘制直方图,查看各数据段内的分布占比,图中柱宽为 2。
1 2 3 4 5 6 7 8 9 # 绘制密度分布图 rc = {'axes.unicode_minus': False} sns.set(context='notebook', style='ticks', font='simhei', rc=rc) ax = sns.histplot(data=thedata, x='连续输出1', binwidth=2, stat='proportion') x = range(0, 50, 5) ax.set_xticks(x) ax.set_ylabel("占比", fontsize=14) ax.set_xlabel("连续输出时间/min", fontsize=14) ax.set_title('连续输出时间样本统计', fontsize=14) 从占比直方图可以看出,5~7min 为占比最多区间,大约的18.5%样本落在此区间。
...