共计 2070 个字符,预计需要花费 6 分钟才能阅读完成。
咱们做数据分析,在第一次拿到数据集的时候,个别会用统计学或可视化办法来理解原始数据。
理解列数、行数、取值散布、缺失值、列之间的相干关系等等,这个过程叫做 EDA
(Exploratory Data Analysis,探索性数据分析)。
如果你当初做 EDA
还在用 pandas
一行行写代码,那么福音来了!
目前曾经有很多 EDA
工具能够主动产出根底的统计数据和图表,能为咱们节俭大量工夫。
本文会比照介绍 4 款罕用的 EDA
工具,最初一款绝了,齐全是摈弃代码的节奏。
正式介绍这些工具之前,先来加载数据集
import numpy as np
import pandas as pd
iris = pd.read_csv('iris.csv')
iris
iris
是上面用到的数据集,是一个 150 行 * 4 列
的 DataFrame。
1. PandasGUI
PandasGUI
提供数据预览、筛选、统计、多种图表展现以及数据转换。
# 装置
# pip install pandasgui
from pandasgui import show
show(iris)
PandasGUI 操作界面
PandasGUI
更偏重数据展现,提供了 10 多种图表,通过可视的形式配置。
但数据统计做的比较简单,没有提供缺失值、相关系数等指标,数据转换局部也只凋谢了一小部分接口。
2. Pandas Profiling
Pandas Profiling
提供了整体数据详情、每列的详情、列之间的关图、列之间的相关系数。
# 装置:# pip install -U pandas-profiling
# jupyter nbextension enable --py widgetsnbextension
from pandas_profiling import ProfileReport
profile = ProfileReport(iris, title='iris Pandas Profiling Report', explorative=True)
profile
Pandas Profiling 操作界面
每列的详情包含:缺失值统计、去重计数、最值、平均值等统计指标和取值散布的柱状图。
列之间的相关系数反对 Spearman、Pearson、Kendall 和 Phik 4 种相关系数算法。
与 PandasGUI
相同,Pandas Profiling
没有丰盛的图表,但提供了十分多的统计指标以及相关系数。
3. Sweetviz
Sweetviz
与 Pandas Profiling
相似,提供了每列具体的统计指标、取值散布、缺失值统计以及列之间的相关系数。
# 装置
# pip install sweetviz
import sweetviz as sv
sv_report = sv.analyze(iris)
sv_report.show_html()
Sweetviz 操作界面
Sweetviz
还有有一个十分好的个性是反对不同数据集的比照,如:训练数据集和测试数据集的比照。
Sweetviz 数据集比照
蓝色和橙色代表不同的数据集,通过比照能够清晰发现数据集之前的差别。
4. dtale
最初重磅介绍dtale
,它不仅提供丰盛图表展现数据,还提供了很多交互式的接口,对数据进行操作、转换。
dtale 操作界面
dtale
的性能次要分为三局部:数据操作 、 数据可视化 、 高亮显示。
4.1 数据操作(Actions)
dtale
将 pandas
的函数包装成可视化接口,能够让咱们通过图形界面形式来操作数据。
# pip install dtale
import dtale
d = dtale.show(iris)
d.open_browser()
Actions
右半局部图是右边图的中文翻译,用的是 Chrome 主动翻译,有些不是很精确。
举一个 数据操作 的例子。
Summarize Data
上图是 Actions 菜单中 Summarize Data 的性能,它提供了对数据集汇总操作的接口。
上图咱们抉择依照 species
列分组,计算 sepal_width
列的平均值,同时能够看到左下角 dtale
曾经主动为该操作生成了 pandas
代码。
4.2 数据可视化(Visualize)
提供比拟丰盛的图表,对每列数据详情、反复行、缺失值、相关系数进行统计和展现。
Visualize
举一个 数据可视化 的例子。
Describe
上图是 Visualize 菜单中 Describe 的性能,它能够统计每列的最值、均值、标准差等指标,并提供图表展现。
右侧的 Code Export
能够查看生成这些数据的代码。
4.3 高亮显示(Highlight)
对缺失值、异样值做高亮显示,不便咱们疾速定位到异样的数据。
Highlight
上图显示了将 sepal_width
字段的异样值。
dtale
十分弱小,性能也十分多,大家能够多多摸索、开掘。
最初,简略总结一下。如果摸索的数据集偏重数据展现,能够选 PandasGUI
;如果只是简略理解根本统计指标,能够抉择Pandas Profiling
和Sweetviz
;如果须要做深度的数据摸索,那就抉择dtale
。