什么是探索性数据分析?

2025 年 2 月 4 日 | 12 分钟阅读

探索性数据分析是数据科学领域中的一个主要过程。它包括使用不同的统计和可视化方法表达数据的过程,这有助于进一步分析数据。

本文将简要介绍探索性数据分析、其方法、过程和用途。

探索性数据分析

探索性数据分析 (EDA) 是一个分析数据并探索数据以提取有用特征、发现模式和趋势、确定异常值以及发现不同变量之间显着关系的过程。这是数据分析和对数据集实施统计之前的第一个步骤。EDA 占据了数据科学过程中 80% 的工作。

EDA 超越了简单的总结事实的项目;它旨在揭示可能不会立即显现的隐藏见解。通过仔细检查数据分布、变量之间的关系以及多年来的特征,分析师可以挖掘有价值的记录,这些记录可以塑造他们研究的路径。

分析师需要平滑和预处理统计数据以确保准确性和一致性。他们需要使用多种可视化技术来探索统计数据的一个不同方面。最后,他们应该批判性地解释发现,考虑统计数据中的上下文和潜在偏差。

探索性数据分析的目标

  • 探索性数据分析包括数据清洗。它帮助数据科学家清洗数据,包括删除重复项、空值、删除异常值和不必要的特征等不同过程。
  • 它包括数据集上的基本统计,包括确定趋势、变异性等。它还用于计算平均值、中位数、众数、标准差等。
  • 它列出了所有重要因素,提供了预测模型,定义了参数等等。
  • 探索性数据分析也适用于特征工程,数据科学家在其中探索不同的变量并创建新函数以提取见解并从中获取一些有用的信息。使用特征工程,数据特征可以被缩放和归一化,并且可以创建派生变量并编码表达变量。
  • 探索性数据分析还开发了变量之间的关系和依赖性。它通过创建不同的图表和图形(如散点图、条形图等)来实现数据可视化,这些图表和图形定义了变量之间的见解和关系。

探索性数据分析在数据科学中的重要性

探索性数据分析是用于为数据科学中的进一步过程(包括数据操作、可视化、制作预测模型等)准备数据的首要步骤。它有助于发现错误并检测数据集中的模式。它有助于为数据科学项目建立一个设置。

EDA 帮助数据分析师和科学家了解他们是否正在朝着正确的方向前进。它帮助客户确认他们正在提出正确的问题。它回答了最少但必要的问题,例如相关性、标准差、平均值、中位数、众数、依赖特征和数据集中不必要的属性。在成功完成探索性数据分析过程后,数据科学家通过制作预测模型和更深入地分析数据,以平稳的方式进行进一步的过程。

用于探索性数据分析的工具

探索性数据分析可以使用不同的工具执行。这些是

Python:Python 是最简单但最有用的面向对象编程语言,它提供了一个解决许多不同问题的平台,包括机器学习、深度学习、数据科学等等。谈到探索性数据分析,Python 提供了不同的库,具有简单、易于阅读和理解的语法,可以帮助高效地执行 EDA 任务。

Python 提供集成记录系统和功能,可用于查找和处理记录集中的缺失值,并比较数据分析的基本结构和所需功能。它有助于确定最适用的机器学习模型。它还提供通用库,通过构建预测模型来执行机器学习的特性。

另一个用于探索性事实评估的有用工具是 R 编程语言。它是一种开源编程语言,为统计计算提供了一个环境。它提供特殊的统计功能来检查信息集的信息。

EDA 在各个行业中具有各种应用,包括企业分析、医疗保健、金融和广告。在商业分析中,EDA 有助于了解客户行为和市场趋势。在医疗保健中,EDA 协助疾病监测和流行病学研究。在金融中,EDA 支持风险评估和投资组合管理。在广告中,EDA 为细分和重点策略提供信息。

EDA 的重要性

EDA 之所以重要,原因有多种

  • 生成洞察:它提供了数据粗略审查可能遗漏的信息,使分析师能够做出更明智的决策。
  • 错误检测:通过在分析过程中协助及早识别数据质量问题,EDA 降低了得出错误结论的可能性。
  • 假设生成:EDA 可能导致开发可以通过形式统计技术进行检验的理论。
  • 沟通:在 EDA 期间创建的可视化通常用于向利益相关者传达发现,这有助于使复杂数据更容易访问和理解。

探索性数据分析的类型

探索性数据分析 (EDA) 包含各种策略,每种策略都服务于理解和分析数据集的特定目的。以下是一些常见的 EDA 类型

1. 单变量分析

它侧重于一次分析一个变量。使用的技术包括直方图、箱线图以及均值、中位数和众数等摘要统计数据。它还有助于理解单个变量的分布和中心趋势。

2. 双变量分析

它检查两个变量之间的关系。它使用包括散点图、相关分析和列联表在内的技术。它有助于识别变量之间的样式、关联和依赖性。

3. 多变量分析

多变量分析用于使用不同技术同时检查多个变量之间的关系,包括多元回归分析、主成分分析 (PCA) 和聚类分析。此外,它有助于更深入地探索变量之间复杂的连接和交互。

4. 时间分析

它侧重于分析随时间变化的统计数据。它使用时间序列图、趋势分析和季节性分解等技术,有助于识别随时间变化的样式和趋势。

5. 空间分析

它使用空间映射、空间自相关分析和热点分析等技术分析地理区域中的数据。它对于理解统计数据中的空间模式和关系(例如地理聚类或趋势)很有用。

6. 文本分析

文本分析用于分析文本记录以提取有意义的见解。它使用情感分析、主题建模和文本挖掘等技术,这些技术对于分析文本记录(如客户评价、社交媒体帖子或调查回复)很有用。

7. 交互式可视化

它利用交互式可视化来动态探索信息。技术包括交互式仪表板、下钻图表和连接可视化。它允许进行更具吸引力和探索性的分析,使用户能够从不同的角度交互式地探索信息。

8. 统计建模

这种探索性数据分析涉及将统计模型拟合到数据以检验假设或进行预测,使用不同的技术,包括线性回归、逻辑回归和机器学习算法。它有助于量化变量之间的关系并根据数据模式进行预测。

每种类型的 EDA 都服务于特定的目的,可以单独使用或组合使用以全面了解数据集并提取可操作的见解。

EDA 的实施

Python 提供了不同的库,用于探索和分析数据并从中提取有用的信息。

Numpy、Pandas、Matplotlib 等库也用于访问、探索和可视化数据。

探索性数据分析的过程

它包括探索性数据分析过程中的不同步骤

  • 导入库
  • 读取数据集
  • 探索数据
  • 可视化数据

导入库

读取数据集

Pandas 提供了一个函数 `pd.read_csv()` 来读取 CSV 格式的数据集。这里使用了一个包含泰坦尼克号幸存者数据的数据集。它包含多个特征,如性别、年龄、票价、客舱等等。

探索数据

What is Exploratory Data Analysis

`head()` 函数用于打印数据集的前 5 行。

 

`shape` 函数用于定义数据集的行和列。


What is Exploratory Data Analysis

`describe()` 函数用于定义数据集的基本结构。


What is Exploratory Data Analysis

`info()` 函数用于概述数据集中非空值的数量。


What is Exploratory Data Analysis

`isnull()` 函数用于检查数据集中是否存在任何空值。

`dropna()` 函数用于从数据集中删除空值。


What is Exploratory Data Analysis

从数据集中删除空值后,需要检查数据中是否还剩下任何空值。`isnull().sum()` 函数给出空值的计数。

可视化数据


What is Exploratory Data Analysis

What is Exploratory Data Analysis

What is Exploratory Data Analysis

What is Exploratory Data Analysis

MCQS 探索性数据分析

1. 探索性数据分析 (EDA) 的目的是什么?

  1. 数据可视化
  2. 预测建模
  3. 从数据中提取有用的特征和模式
  4. 数据存储

答案:C

解释: EDA 侧重于从数据中提取有用的特征、模式和关系,以便进行进一步分析。


2. 以下哪个过程不属于 EDA 中的数据清洗?

  1. 删除重复项
  2. 添加异常值
  3. 处理空值
  4. 删除不必要的特征

答案: B

解释: 数据清洗包括删除异常值,而不是添加它们。


3. 由于其通用库,哪种编程语言最常用于 EDA?

  1. Java
  2. Python
  3. C#
  4. MATLAB

答案: B

解释: Python 提供了 Pandas、NumPy 和 Matplotlib 等库用于 EDA。


4. 以下哪个库通常不用于 Python 中的 EDA?

  1. NumPy
  2. Pandas
  3. TensorFlow
  4. Matplotlib

答案:C

解释: TensorFlow 主要用于机器学习,而不是 EDA。


5. `isnull().sum()` 函数在 EDA 中的目的是什么?

  1. 替换空值
  2. 计算数据集中的空值数量
  3. 删除空值
  4. 总结数据集

答案: B

解释: 此函数计算数据集中空值的总数。


6. 哪种图表最适合可视化单个变量的分布?

  1. 散点图
  2. 条形图
  3. 直方图
  4. 箱线图

答案:C

解释: 直方图是理解单个变量分布的理想选择。


7. 哪种类型的 EDA 用于分析两个变量之间的关系?

  1. 单变量分析
  2. 双变量分析
  3. 多变量分析
  4. 时间分析

答案: B

解释: 双变量分析侧重于两个变量之间的关系。


8. EDA 中的时间分析侧重于什么?

  1. 分析变量之间的关系
  2. 检查随时间变化的数据
  3. 识别地理模式
  4. 探索文本数据

答案: B

解释: 时间分析侧重于时间序列数据。


9. 以下哪项是多变量分析方法的一个例子?

  1. 散点图
  2. 相关分析
  3. 主成分分析 (PCA)
  4. 直方图

答案:C

解释: PCA 用于分析多个变量之间的关系。


10. 哪种可视化方法最适合比较两个变量的分类数据?

  1. 直方图
  2. 散点图
  3. 条形图
  4. 列联表

答案: D

解释: 列联表总结了两个分类变量之间的关系。


11. 哪种类型的 EDA 涉及空间数据分析?

  1. 时间分析
  2. 文本分析
  3. 空间分析
  4. 统计建模

答案:C

解释: 空间分析在地理背景下检查数据。


12. Pandas 中以下哪个函数用于加载 CSV 文件?

  1. load_csv()
  2. pd.load()
  3. pd.read_csv()
  4. read_csv_file()

答案:C

解释: `pd.read_csv()` 函数在 Pandas 中读取 CSV 文件。


13. 交互式可视化在 EDA 中的主要好处是什么?

  1. 总结事实
  2. 数据的动态探索
  3. 统计建模
  4. 预测分析

答案: B

解释: 交互式可视化允许从多个角度动态探索数据。


14. 以下哪个过程不属于典型的 EDA 工作流程?

  1. 数据清理
  2. 数据探索
  3. 模型部署
  4. 数据可视化

答案:C

解释: 模型部署不属于 EDA,而是在数据分析之后进行。


15. Pandas 中 `describe()` 函数的目的是什么?

  1. 可视化数据
  2. 总结数据集的统计信息
  3. 处理缺失数据
  4. 合并数据集

答案: B

解释: `describe()` 函数提供数据集的摘要统计信息。


16. 特征工程在 EDA 中的常见用途是什么?

  1. 可视化数据分布
  2. 创建新的派生变量
  3. 清洗重复记录
  4. 执行时间序列分析

答案: B

解释: 特征工程涉及创建新变量以提取见解。


17. 在双变量分析中,哪种统计方法用于确定关系?

  1. PCA
  2. 回归分析
  3. 相关分析
  4. 描述性统计

答案:C

解释: 相关分析确定两个变量之间的关系。


18. EDA 在哪个领域有助于理解客户行为和市场趋势?

  1. 融资
  2. 医疗保健
  3. 商业分析
  4. 广告

答案:C

解释: 商业分析中的 EDA 有助于理解客户行为和市场趋势。


19. 单变量分析的主要目的是什么?

  1. 比较多个变量
  2. 探索单个变量的分布和中心趋势
  3. 确定变量之间的关系
  4. 分析基于时间的趋势

答案: B

解释: 单变量分析侧重于单个变量的分布和中心趋势。


20. 哪种工具在 EDA 中提供统计计算和可视化,并且是开源的?

  1. Python
  2. R 编程
  3. MATLAB
  4. SAS

答案: B

解释: R 是一种开源编程语言,用于 EDA 中的统计计算和可视化。


21. 哪种类型的 EDA 侧重于分析文本数据以获取见解?

  1. 时间分析
  2. 统计建模
  3. 文本分析
  4. 多变量分析

答案:C

解释: 文本分析用于分析文本数据以获取见解,例如情感分析或主题建模。


22. Pandas 中 `dropna()` 函数的目的是什么?

  1. 用默认值替换空值
  2. 删除包含空值的行或列
  3. 计算缺失值的均值
  4. 总结数据集

答案: B

解释: `dropna()` 函数从数据集中删除包含空值的行或列。


23. 以下哪项是 EDA 中处理分类变量的步骤?

  1. 特征缩放
  2. 编码变量
  3. 规范化
  4. 归因

答案: B

解释: 编码用于将分类变量转换为适合分析的格式。


24. 箱线图主要显示什么?

  1. 数据分布和频率
  2. 均值和众数
  3. 异常值和数据范围
  4. 变量之间的相关性

答案:C

解释: 箱线图显示数据范围,包括中位数、四分位数和异常值。


25. 使用 Python 进行 EDA 的主要优势是什么?

  1. 专有工具
  2. 全面的库和简单性
  3. 高计算要求
  4. 有限的可扩展性

答案: B

解释: Python 提供了 Pandas、Matplotlib 和 Seaborn 等全面的库,使其在 EDA 中简单高效。


26. 哪种可视化最适合显示随时间变化的趋势?

  1. 条形图
  2. 直方图
  3. 折线图
  4. 散点图

答案:C

解释: 折线图是可视化随时间变化的趋势的理想选择。


27. EDA 中哪种方法常用于降低数据维度?

  1. 相关分析
  2. 回归分析
  3. 主成分分析 (PCA)
  4. 时间分析

答案:C

解释: PCA 用于降低数据集的维度,同时保留重要信息。


28. 以下哪项是多变量分析中的常见技术?

  1. 箱线图
  2. 列联表
  3. 散点矩阵
  4. 条形图

答案:C

解释: 散点矩阵可视化数据集中多个变量之间的关系。


29. 可视化在 EDA 中的作用是什么?

  1. 执行预测建模
  2. 清洗数据
  3. 解释数据模式和见解
  4. 替换空值

答案:C

解释: 可视化有助于解释数据中的模式、趋势和关系。


30. 以下哪项是 EDA 中特征缩放的关键用途?

  1. 删除重复项
  2. 确保特征具有相似的范围
  3. 编码分类变量
  4. 可视化数据

答案: B

解释: 特征缩放确保所有变量具有相似的范围,这对于许多机器学习算法至关重要。


下一主题数据科学技术