9种Seaborn可视化图表,助力探索性数据分析(EDA)

图片[1]-9种Seaborn可视化图表,助力探索性数据分析(EDA)-山海云端论坛

探索性数据分析(EDA)是数据科学家用来分析和调查数据集并总结其主要特征的一种方法,通常采用数据可视化技术。通过创建可视化和摘要来调查和理解数据集的过程,EDA为我们提供了一种询问数据问题的方式,可以找出关于数据的所有信息,并理解它为什么是这样的(即识别趋势、模式、异常等)。

在这篇文章中,我们将介绍EDA中常用的9个图表,并针对每个图表提供代码示例。

1. 条形图/计数图

显示分类变量的分布。可视化数据集中每个类别的频率或计数。

<code>import seaborn as sns import matplotlib.pyplot as plt data = sns.load_dataset('tips') sns.countplot(x='day', data=data) plt.title('Count of Tips by Day') plt.show()</code>
图片[2]-9种Seaborn可视化图表,助力探索性数据分析(EDA)-山海云端论坛

2. 箱线图

显示数据中的平均值、中位数、分位数和离群值。比较多个变量的分布。可以识别扩散的数值变量,检测数据集中潜在的异常值。

<code>import seaborn as sns import matplotlib.pyplot as plt data = sns.load_dataset('tips') sns.boxplot(x='day', y='total_bill', data=data) plt.title('Box Plot of Total Bill by Day') plt.show()</code>
图片[3]-9种Seaborn可视化图表,助力探索性数据分析(EDA)-山海云端论坛

3. 密度图

密度图可以可视化连续变量的分布。识别数据中的峰值、低谷和总体模式。了解分布的形状并比较多个变量的分布。

<code>import seaborn as sns import matplotlib.pyplot as plt data = sns.load_dataset('tips') sns.kdeplot(data['total_bill'], shade=True) plt.title('Density Plot of Total Bill') plt.show()</code>
图片[4]-9种Seaborn可视化图表,助力探索性数据分析(EDA)-山海云端论坛

4. 散点图

探索两个连续变量之间的关系。识别数据中的模式、相关性或集群。

<code>import seaborn as sns import matplotlib.pyplot as plt data = sns.load_dataset('tips') sns.scatterplot(x='total_bill', y='tip', data=data) plt.title('Scatter Plot of Total Bill vs. Tip') plt.show()</code>
图片[5]-9种Seaborn可视化图表,助力探索性数据分析(EDA)-山海云端论坛

5. 线型图

在时间序列中显示趋势或模式。表示连续区间内两个连续变量之间的关系,还可以比较连续范围内变量的变化。

<code>import seaborn as sns import matplotlib.pyplot as plt data = sns.load_dataset('tips') sns.lineplot(x='total_bill', y='tip', data=data) plt.title('Line Plot of Tip Over Total Bill') plt.show()</code>
图片[6]-9种Seaborn可视化图表,助力探索性数据分析(EDA)-山海云端论坛

6. 热图

显示数值变量的相关矩阵。识别大型数据集中的模式和关系。

<code>import seaborn as sns import matplotlib.pyplot as plt data = sns.load_dataset('tips') correlation_matrix = data.corr() sns.heatmap(correlation_matrix, annot=True, cmap='coolwarm') plt.title('Correlation Heatmap') plt.show()</code>
图片[7]-9种Seaborn可视化图表,助力探索性数据分析(EDA)-山海云端论坛

7. 小提琴图

结合了箱形图和核密度图的特点,可以可视化一个数值变量在不同类别中的分布。

<code>import seaborn as sns import matplotlib.pyplot as plt data = sns.load_dataset('tips') sns.violinplot(x='day', y='total_bill', data=data) plt.title('Violin Plot of Total Bill by Day') plt.show()</code>
图片[8]-9种Seaborn可视化图表,助力探索性数据分析(EDA)-山海云端论坛

8. 子图

为了进行对比,可以在同一图中并排比较多个子图。

<code>import seaborn as sns import matplotlib.pyplot as plt data = sns.load_dataset('tips') plt.figure(figsize=(12, 8)) plt.subplot(2, 2, 1) sns.scatterplot(x='total_bill', y='tip', data=data) plt.title('Scatter Plot of Total Bill vs Tip') plt.subplot(2, 2, 2) sns.boxplot(x='day', y='total_bill', data=data) plt.title('Box Plot of Total Bill by Day') plt.subplot(2, 2, 3) sns.barplot(x='day', y='total_bill', data=data) plt.title('Bar Plot of Total Bill by Day') plt.subplot(2, 2, 4) sns.histplot(data['total_bill'], kde=True) plt.title('Histogram of Total Bill') plt.tight_layout() plt.show()</code>
图片[9]-9种Seaborn可视化图表,助力探索性数据分析(EDA)-山海云端论坛

9. 关系图

Pairplot在中文中没有特定的翻译,这里称作关系图,用于绘制变量之间的关系,通过对多个变量进行可视化来探索它们之间的相关性和趋势。

<code>import seaborn as sns import matplotlib.pyplot as plt data = sns.load_dataset('tips') sns.pairplot(data, hue='day') plt.suptitle('Pairplot of Numerical Variables by Day', y=1.02) plt.show()</code>

总结: 以上就是在EDA中常用的图表。可以看到Seaborn是一个非常强大而方便的工具,它基于matplotlib,但更加美观,并且需要编写的代码更少。因此,在需要简单绘图的EDA中,优先考虑使用Seaborn。

这篇文章提供了详细的图表示例和相应的代码,帮助读者理解如何使用Seaborn进行数据可视化,从而更好地进行探索性数据分析。

© 版权声明
THE END
喜欢就支持一下吧
点赞5 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容