发布于2020-03-14 18:16 阅读(1559) 评论(0) 点赞(24) 收藏(0)
下图为四分位图,又称箱图;在数据分析中经常采用箱图作为特征选取一种方式。
快速解释分位图:
第一四分位数(Q1),又称“较小四分位数”,等于该样本中所有数值由小到大排列后第25%的数字。
第二四分位数 (Q2),又称“中位数”,等于该样本中所有数值由小到大排列后第50%的数字。
第三四分位数 (Q3),又称“较大四分位数”,等于该样本中所有数值由小到大排列后第75%的数字。
python箱图:
def DrawMultBoxPic(input_dict, Y_label):
dict_list_length = []
for item in input_dict:
value = np.percentile(input_dict[item], (25, 50, 75), interpolation='midpoint')
print("分位点=======> ", item)
print("num25: ", value[0])
print("num50: ", value[1])
print("num75: ", value[2])
temp_length = len(input_dict[item])
dict_list_length.append(temp_length)
# 获取最长列表长度
max_length = max(dict_list_length)
# 每个列表在后面追加None
for item in input_dict:
diff_length = max_length - len(input_dict[item])
if diff_length > 0:
for i in range(diff_length):
input_dict[item].append(None)
# 绘制箱型图
zhfont = FontProperties(fname='./fontLib/simsunttc/simsun.ttc', size=22)
data = pd.DataFrame.from_dict(input_dict)
medianprops = dict(linestyle='-', linewidth=2, color='red')
data.boxplot(medianprops=medianprops)
plt.axis([0, 4, 0, 5])
plt.grid(axis='y', ls='--', lw=1, color='grey', alpha=3.)
plt.grid(axis='x', ls='--', lw=1, color='grey', alpha=3.)
plt.xlabel(u'特征对比', fontproperties=zhfont)
plt.ylabel(Y_label, fontproperties=zhfont)
plt.title(Y_label, fontproperties=zhfont)
imgname = './build_images/' + Y_label + '.png'
plt.savefig(imgname, bbox_inches='tight')
plt.show()
if __name__ == "__main__":
data = {
'col1': [1,2,3,4,5],
'col2': [2,3,4,5,6,7]
}
# 该模块可以对不同长度的列表做箱图进行比较,代码仅供分享。
DrawMultBoxPic(data,"box_sample")
原文链接:https://blog.csdn.net/m0_38053092/article/details/104840912
作者:坚持就是胜利
链接:https://www.pythonheidong.com/blog/article/259320/cefd0af020e0594fc4d4/
来源:python黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 python黑洞网 All Rights Reserved 版权所有,并保留所有权利。 京ICP备18063182号-1
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!