Jupyter AI

7 数据挖掘小白教程:探索性数据分析之描述性分析

📅 发表日期: 2024年8月10日

分类: ⛏️数据挖掘入门

👁️阅读: --

在数据挖掘的过程中,进行有效的数据预处理是至关重要的。正如我们在上一篇中讨论的“数据预处理之数据转换与归一化”部分,我们已经对原始数据进行了清洗和标准化,为接下来的分析奠定了基础。本篇将深入探讨探索性数据分析(Exploratory Data Analysis, EDA)中的描述性分析,这一步骤将帮助我们快速理解数据的基本特征和分布规律。

描述性分析的概念

描述性分析是对数据进行初步总结的过程,通过各种统计指标和图形展示数据的主要特征,帮助我们了解数据的分布、中心趋势和变异程度。常见的描述性统计量包括:

  • 均值(Mean):所有数据点的平均值。
  • 中位数(Median):将数据排序后位于中间位置的值。
  • 众数(Mode):数据中出现频率最高的值。
  • 标准差(Standard Deviation):衡量数据分布的离散程度。
  • 范围(Range):数据的最大值与最小值之间的差。

描述性分析步骤

1. 数据导入

假设我们在进行一次房价分析的数据集,我们将使用 pandas 库来加载我们的数据集。以下是数据导入的代码示例:

import pandas as pd

# 使用 pandas 读取 CSV 文件
data = pd.read_csv('house_prices.csv')

# 显示数据的前五行
print(data.head())

2. 基本统计量计算

我们可以利用 pandas 提供的 .describe() 方法来快速获取数据集的基本统计信息。我们关注的特征包括房价中值、均值以及标准差等。

# 显示数据集中数值型特征的描述性统计信息
descriptive_stats = data.describe()

print(descriptive_stats)

示例输出:

          price       size      bedrooms   bathrooms
count  1000.000000  1000.000000  1000.000000  1000.000000
mean   300000.000000   1500.000000    3.000000     2.000000
std    150000.000000    500.000000    1.000000     0.500000
min    100000.000000   800.000000    1.000000     1.000000
25%    200000.000000  1200.000000    2.000000     1.500000
50%    290000.000000  1500.000000    3.000000     2.000000
75%    400000.000000  1800.000000    4.000000     2.500000
max    700000.000000  3000.000000    6.000000     4.000000

3. 数据分布检查

为了更好地理解数据的分布情况,可以使用 pandasmatplotlib 提供的方法绘制 直方图箱线图。这些图形可以帮助我们可视化数据的分布情况。

import matplotlib.pyplot as plt

# 直方图
plt.figure(figsize=(12, 6))
plt.subplot(1, 2, 1)
plt.hist(data['price'], bins=30, color='skyblue', edgecolor='black')
plt.title('房价分布')
plt.xlabel('价格(元)')
plt.ylabel('频数')

# 箱线图
plt.subplot(1, 2, 2)
plt.boxplot(data['price'], vert=False)
plt.title('房价箱线图')
plt.xlabel('价格(元)')

plt.tight_layout()
plt.show()

4. 相关性分析

描述性分析中,了解特征之间的相关性同样重要。可以使用 .corr() 方法来计算特征之间的相关系数:

# 计算相关性矩阵
correlation = data.corr()

print(correlation)

# 可视化相关性矩阵
import seaborn as sns

plt.figure(figsize=(8, 6))
sns.heatmap(correlation, annot=True, fmt=".2f", cmap='coolwarm', cbar=True)
plt.title('特征之间的相关性')
plt.show()

通过上述的描述性统计和可视化,我们能够快速、直观地获取数据的基础信息与特征,为下一步的数据理解和可视化技术准备。

总结

在本篇中,我们介绍了描述性分析的基本概念与操作方法,包括如何利用统计量快速评估数据特征,以及如何通过图形法查看数据的分布情况。这些分析将为我们后续的可视化技术打下坚实的基础。在下一篇中,我们将进一步探索如何使用各种可视化工具来展示和理解数据的深层规律。

通过对描述性分析的学习,相信你已对数据有了初步的理解。接下来,让我们在可视化技术的世界中进一步探寻数据的秘密。