两种方法教你一行代码实现探索性数据分析报告

两种方法教你一行代码实现探索性数据分析报告,第1张

Python数据分析
  • 🌸个人主页:JoJo的数据分析历险记
  • 📝个人介绍:小编大四统计在读,目前保研到统计学top3高校继续攻读统计研究生
  • 💌如果文章对你有帮助,欢迎关注、点赞、收藏、订阅专栏

文章目录
  • Python数据分析
  • 💮两种方法教你一行代码实现探索性数据分析报告
  • 🏵️1. Sweetviz
  • 🌹2. 比较探索性数据分析
  • 🥀3. pandas_profiling
  • ✨总结
  • 文章推荐

💮两种方法教你一行代码实现探索性数据分析报告

探索性数据分析(EDA) 是使用可视化方法总结和分析数据集主要特征的过程。EDA是数据科学家要做的第一部分,如果我们不懂得如何进行EDA,那么无法对数据进行进一步的建模。上一篇文章我以泰坦尼克号数据为例,介绍了如何使用python详细的进行探索性数据分析,但有时这是很耗费时间的,现在,我介绍两种方法实现一行代码生成探索性数据分析报告。分别使用以下两个包,如果没有安装的小伙伴先去安装一下。

  • Sweetviz
  • pandas_profiling

我们照样使用泰坦尼克号数据集进行分析,需要相关数据集的看我这篇文章:https://blog.csdn.net/weixin_45052363/article/details/124383398

  • 先导入数据
import pandas as pd
from pandas_profiling import ProfileReport
df = pd.read_csv("train.csv")
df.head()
PassengerIdSurvivedPclassNameSexAgeSibSpParchTicketFareCabinEmbarked
0103Braund, Mr. Owen Harrismale22.010A/5 211717.2500NaNS
1211Cumings, Mrs. John Bradley (Florence Briggs Thayer)female38.010PC 1759971.2833C85C
2313Heikkinen, Miss. Lainafemale26.000STON/O2. 31012827.9250NaNS
3411Futrelle, Mrs. Jacques Heath (Lily May Peel)female35.01011380353.1000C123S
4503Allen, Mr. William Henrymale35.0003734508.0500NaNS
df.shape
(891, 12)
🏵️1. Sweetviz

Sweetviz 一个python开源库,通过基本的可视化来分析数据,并生成一个html文件。这个库的主要优点是我们可以 比较数据集
首先我们创建一个名为sweet_Analysized_report的文件,显示探索性数据分析结果。在本报告中,我们可以很容易地找到不同变量的特征,如:数量、缺失值、不同值、最大值、最小值、平均值等。具体代码和结果如下图所示

import sweetviz as sv
sweet_report = sv.analyze(df)
sweet_report.show_html('sweet_report.html')

  • 相关系数热力图

  • Age分布情况

  • sibsip分布情况

在这个Html文件中,我们可以看到其他每个变量的分布情况,大家可以自行验证测试。

🌹2. 比较探索性数据分析

Sweetviz还支持比较不同数据集的探索性数据分析,首先,我们将数据集分成两部分,然后进行比较,然后保存此比较报告。数据集的两部分显示两种不同的颜色橙色蓝色。具体代码和结果见下文:

df1 = sv.compare(df[445:], df[:445])
df1.show_html('Compare.html')

这里我把数据分为两部分,分别有445和446个数据。

  • survived分布情况

  • Pclass分布情况

  • sex分布情况

🥀3. pandas_profiling

pandas_profiling基于pandasDataFrame数据类型,可以简单快速地进行探索性数据分析。和sweetviz类似,pandas_profiling可以返回一个html文件,包含如下内容

  • 数据整体概要:数据类型,唯一值,缺失值等
  • 各个变量的描述性统计分析
  • 各个变量的分布情况,直方图和条形图
  • 变量间的相关系数热力图等

具体代码和结果如下:

design_report = ProfileReport(df)
design_report.to_file(output_file='report.html')
  • 变量分布情况

  • 相关系数热力图

  • 变量关系图

  • 数据总体概要

✨总结

用上述两种方法得到的探索性数据分析是非常简易的。如果要想详细了解数据的话,建议一步一步根据自己的需求进行分析。具体可以看下面这篇推荐的文章,不过通过上述两种方法可以让我们大致初步的了解一下数据情况,并且可以节约很多时间(毕竟探索性数据分析真的很花费时间)

文章推荐

🎄不知道如何进行探索性数据分析(EDA)?超详细教程,快来学习吧

在后续我还会考虑介绍一些如何使用python进行特征工程、数据清洗、模型构建以及一些数据挖掘实战项目。各位的点赞、收藏、评论、关注是我写作最大的动力!!!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/786273.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-05
下一篇 2022-05-05

发表评论

登录后才能评论

评论列表(0条)

保存