你有没有遇到一种情况,处理一张很大的csv表格的时候很难找到表格中每一列的缺失数据,或者说处理速度非常慢?当然如果你的Excel水平非常高,这个可能不会成为你的问题,但如果当你想可视化出每一列缺失数据的分布和数量怎么办呢?这时候就需要用Python绘制热力图了!
1.安装所需要的第三方Python库
在开始之前我们需要安装以下Python包(库),打开你的CMD(Windows系统)/Terminal(macOS系统)输入以下指令即可:
pip install seaborn pip install pandas pip install matplotlib
其中pandas是用于数据操作与处理的,matplotlib和seaborn主要用于Python数据可视化,也就是绘制我们所需要的热力图。
2.Python加载数据
好了,废话不多说,让我们现在就开始使用panda加载数据:
import pandas as pd import numpy as np import seaborn import matplotlib data = pd.read_csv('training_data.csv')
没错,pandas的使用就这么简单,读取csv文件直接使用read_csv函数,你可以使用自己需要的csv文件,也可以使用我们提供的:点击下载 Python推特机器人分类数据集 中的training_data.csv,只需要你移动到当前代码的文件夹下即可。
3.Python构造热力图
使用Python构造热力图识别表格的缺失数据:
seaborn.heatmap(data.isnull(), yticklabels=False, cbar=False, cmap='viridis') # 热力图,当data中有空值时标为黄色 matplotlib.pyplot.tight_layout() matplotlib.pyplot.show()
seaborn.heatmap用于生成热力图,其会检查data中的每个单元格,如果为空则标记为黄色,cmap为颜色图谱,viridis即蓝-绿-黄. 此外,matplotlib.pyplot主要用于负责展示图片。如果你需要知道seaborn更详细的参数文档,可以阅读这篇文章。
整体代码如下(一共只用了7行)
import pandas as pd import seaborn import matplotlib data = pd.read_csv('training_data.csv') seaborn.heatmap(data.isnull(), yticklabels=False, cbar=False, cmap='viridis') matplotlib.pyplot.tight_layout() matplotlib.pyplot.show()
我们的文章到此就结束啦,如果你希望我们今天的Python 教程,请持续关注我们,如果对你有帮助,麻烦在下面点一个赞/在看哦有任何问题都可以在下方留言区留言,我们都会耐心解答的!
Python实用宝典 (pythondict.com)
不只是一个宝典
欢迎关注公众号:Python实用宝典
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)