5个可以帮助pandas进行数据预处理的可视化图表

简介: 5个可以帮助pandas进行数据预处理的可视化图表

“一目了然胜过千言万语。”分析数据点的探索性数据分析(EDA)是在算法的数据建模之前制定假设的正确步骤。

640.png

数据科学行业中一个最常见的陷阱是花费数小时为他们的项目寻找最佳算法,而没有花足够的时间首先理解数据。

数据科学和机器学习项目的结构化方法从项目目标开始。同一组数据点可以推断出一些有意义的信息。基于我们所寻找的,我们需要关注数据的另一个方面。一旦我们明确了目标,我们就应该开始考虑我们需要的数据点。这将使我们能够专注于最相关的信息集,而忽略可能不重要的数据集。

在现实生活中,从多个来源收集到的大多数时间数据都有空白值、打字错误和其他异常。在进行任何数据分析之前,清除数据是至关重要的。

在本文中,我将讨论五个强大的数据可视化选项,它们可以立即提供数据特征的感觉。即使在正式建模或假设测试任务之前,执行EDA就可以传达大量关于数据和特征之间关系的信息。

第1步-我们将导入pandas、matplotlib、seaborn和NumPy包,我们将使用这些包进行分析。我们需要散点图、自相关图、滞后图和平行图。

importpandasaspdimportnumpyasnpimportmatplotlib.pyplotaspltfrompandas.plottingimportautocorrelation_plotimportseabornassnsfrompandas.plottingimportscatter_matrixfrompandas.plottingimportautocorrelation_plotfrompandas.plottingimportparallel_coordinatesfrompandas.plottingimportlag_plot

第2步-在Seaborn包中,有一个内置的小数据集。我们将使用“mpg”、“tips”和“attention”数据进行可视化。数据集是在seaborn中使用load_dataset方法加载的。

"""Download the datasets used in the program """CarDatabase=sns.load_dataset("mpg")
MealDatabase=sns.load_dataset("tips")
AttentionDatabase=sns.load_dataset("attention")

六边形分箱图(hexpin)

我们经常使用散点图来快速掌握变量之间的关系。只要图中没有人口稠密的数据点,获得一个洞察力是非常有帮助的。在下面的代码中,我们绘制了“mpg”数据集中“Horsepower” 和“Acceleration”数据点之间的散点图。

plt.scatter(CarDatabase.acceleration ,CarDatabase.horsepower,marker="^")
plt.show()

散点图中的点密集分布,从中获取有意义的信息有点困难。

640.png

hexpins是解决重叠点散点图的一个很好的替代方案。每个点不是在hexbin图中单独绘制的。在下面的代码中,我们用相同的数据集在“Horsepower” 和“Acceleration”之间绘制一个hexbin。

CarDatabase.plot.hexbin(x='acceleration', y='horsepower', gridsize=10,cmap="YlGnBu")
plt.show()

在hexpin图中可以清楚地推断“Horsepower” 和“Acceleration”范围集中值,变量之间呈负线性关系。六边形的大小取决于“网格大小”参数。

640.png

热力图(Heatmaps)

热力是我个人最喜欢查看不同变量之间的相关性。那些在媒体上跟踪我的人可能已经注意到我经常使用它。在下面的代码中,我们将计算seaborn“mpg”数据集中所有变量之间的成对相关性,并将其绘制为热力图。

热力图是我个人最喜欢查看不同变量之间的相关性。那些在媒体上跟踪我的人可能已经注意到我经常使用它。在下面的代码中,我们将计算seaborn“mpg”数据集中所有变量之间的成对相关性,并将其绘制为热力图。

sns.heatmap(CarDatabase.corr(), annot=True, cmap="YlGnBu")
plt.show()

我们可以看到“cylinders” 和 “horsepower” 是密切正相关的(正如在汽车中所预期的),而重量与加速度成反比。我们只需几行代码就可以快速理解所有不同变量之间的指示性关系。

640.png

自相关图(Autocorrelation)

自相关图是一个快速的试金石测试,以确定数据点是否随机。如果数据点遵循某种趋势,那么一个或多个自相关将显著非零。图中的虚线显示99%的置信区间。在下面的代码中,我们正在检查“tips”数据库中的总帐单金额是否是随机的。

autocorrelation_plot(MealDatabase.total_bill)
plt.show()

我们可以看到,自相关图在所有时间滞后中都非常接近于零,这表明总的_bill数据点是随机的。

640.png

当我们按照特定顺序绘制数据点的自相关图时,我们可以看到该图显著地非零。

data=pd.Series(np.arange(12,7000,16.3))
autocorrelation_plot(data)
plt.show()

640.png

滞后图(Lag)

滞后图也有助于验证数据集是随机值集还是遵循某种趋势。当绘制“tips”数据集的“total_bills”值的滞后图时,就像在自相关图中一样,滞后图表明它是随机数据,到处都有值。

lag_plot(MealDatabase.total_bill)
plt.show()

640.png

当我们延迟绘制一个非随机数据序列时,如下面的代码所示,我们得到了一条平滑的线条。

data=pd.Series(np.arange(-12*np.pi,300*np.pi,10))
lag_plot(data)
plt.show()

640.png

平行坐标图(Parallel coordinates)

把我们的大脑包围起来并将其可视化不仅仅是三维数据,这一直是一个挑战。绘制高维数据集的平行坐标非常有用。每个尺寸用一条垂直线表示。

在平行坐标系中,“N”等距垂直线表示数据集的“N”维度。顶点在第n个轴上的位置对应于该点的第n个坐标。

让我们考虑一个小样本数据,它有五个小部件和大尺寸小部件的五个特性。

640.png

垂直线表示小部件的每个功能。一系列连续的线段代表“小”和“大”小部件的特征值。

640.png

下面的代码绘制了seaborn中“attention”数据集的平行坐标。请注意,群集的点看起来更靠近。

parallel_coordinates(AttentionDatabase,"attention",color=('#556270', '#C7F464'))
plt.show()

640.png

我希望你能开始使用这些现成的绘图来执行探索性的数据分析

目录
相关文章
|
5月前
|
数据可视化 数据挖掘 Linux
原来使用 Pandas 绘制图表也这么惊艳
原来使用 Pandas 绘制图表也这么惊艳
|
9月前
|
数据可视化 数据挖掘 数据处理
Pandas+Pyecharts | 40000+汽车之家数据分析可视化
Pandas+Pyecharts | 40000+汽车之家数据分析可视化
|
9月前
|
数据可视化 数据挖掘 大数据
Pandas+Pyecharts | 北京某平台二手房数据分析可视化
Pandas+Pyecharts | 北京某平台二手房数据分析可视化
|
7月前
|
数据可视化 数据挖掘 数据处理
【100天精通Python】Day61:Python 数据分析_Pandas可视化功能:绘制饼图,箱线图,散点图,散点图矩阵,热力图,面积图等(示例+代码)
【100天精通Python】Day61:Python 数据分析_Pandas可视化功能:绘制饼图,箱线图,散点图,散点图矩阵,热力图,面积图等(示例+代码)
192 0
|
15天前
|
存储 数据可视化 数据挖掘
数据分析与可视化:Pandas与Matplotlib/Seaborn的完美结合
【4月更文挑战第16天】本文探讨了Python中的Pandas、Matplotlib和Seaborn如何协同进行数据分析与可视化。Pandas提供高效的数据结构DataFrame,便于数据处理和清洗;Matplotlib是基础绘图库,支持自定义图表;Seaborn则在Matplotlib基础上提供美观的统计图形。通过这三个库的无缝结合,数据分析师可以从数据处理直达可视化,提高效率并呈现更具吸引力的分析结果。掌握这些工具将助力深入理解数据并揭示其中的故事。
|
2月前
|
数据采集 数据可视化 数据挖掘
Python中如何使用pandas和matplotlib库绘制图表
Python中如何使用pandas和matplotlib库绘制图表
35 0
|
3月前
|
SQL 数据可视化 数据挖掘
利用Python中的Pandas库进行数据分析和可视化
Python语言中的Pandas库是一个功能强大的工具,可用于数据处理、清洗、分析和可视化。本文将介绍如何利用Pandas库对数据进行处理和分析,并结合Matplotlib库进行数据可视化,帮助读者快速掌握数据分析和可视化的基本方法。
32 3
|
4月前
|
XML JSON 数据格式
Python Pandas PK esProc SPL,谁才是数据预处理王者?
Python Pandas PK esProc SPL,谁才是数据预处理王者?
|
5月前
|
数据可视化 Python
利用Pandas探究自行车租赁随时间及天气变化的分布情况并可视化(附源码 超详细)
利用Pandas探究自行车租赁随时间及天气变化的分布情况并可视化(附源码 超详细)
36 1
|
5月前
|
数据采集 Python
利用Pandas对小费数据集进行数据预处理实战(附源码)
利用Pandas对小费数据集进行数据预处理实战(附源码)
87 0