关于数据分析:一键自动化数据分析快来看看-2022-年最受欢迎的-Python-宝藏工具库-⛵

💡 作者:韩信子@ShowMeAI
📘 数据分析◉技能晋升系列:http://www.showmeai.tech/tutorials/33
📘 数据分析实战系列:http://www.showmeai.tech/tutorials/40
📘 本文地址:http://www.showmeai.tech/article-detail/284
📢 申明:版权所有,转载请分割平台与作者并注明出处
📢 珍藏ShowMeAI查看更多精彩内容

理论工作中,咱们往往依靠于业务数据分析制订业务策略。这个过程须要频繁地进行数据分析和开掘,发现模式法则。对于算法工程师而言,一个无效的 AI 算法零碎落地,不仅仅是模型这么简略——数据才是最底层的驱动。

典型的『机器学习工作流程』蕴含 6 个关键步骤,其中『探索性数据分析(Exploratory Data Analysis, EDA) 』是至关重要的一步。

  • 定义问题
  • 数据采集和 ETL
  • 探索性数据分析
  • 数据筹备
  • 建模(模型训练和抉择)
  • 部署和监控

Wiki: In statistics, exploratory data analysis is an approach of analyzing data sets to summarize their main characteristics, often using statistical graphics and other data visualization methods. A statistical model can be used or not, but primarily EDA is for seeing what the data can tell us beyond the formal modeling and thereby contrasts traditional hypothesis testing.

探索性数据分析,通常应用统计图形等数据可视化办法,摸索数据的构造和法则,总结数据次要特色的办法。这一过程通常蕴含细碎的解决步骤和剖析操作。

探索性数据分析 EDA 的常用工具

优良的工具能够简化上述过程!甚至能够一键生成剖析报告。本篇 ShowMeAI 给大家总结了截至 2022年 最受欢迎的摸索式数据分析工具库,快一起试起来吧!

通常,咱们有以下 3 种形式进行 EDA:

  • 形式1:在 Python/R 中应用库/框架手动剖析
  • 形式2:在 Python/R 中应用自动化 EDA 库
  • 形式3:应用 Microsoft Power BI 或 Tableau 等工具

3种形式对应的最佳工具库咱们梳理到下文中了,对自动化数据分析感兴趣的同学能够间接跳至『自动化EDA工具库』板块。

形式1:手动剖析工具库

💡 Matplotlib

Matplotlib 是一个 Python 进行绘图与交互式可视化的工具。 大家在Python中用到的绝大多数工具包扩大都是构建在 Matplotlib 之上的(包含 Seaborn、HoloViews、ggplot 以及后续提到局部自动化 EDA 工具等)。

基于 Matplotlib 能够借助简略的代码实现:散点图、直方图、条形图、误差图和箱线图,辅助咱们了解数据和进行后续工作。

大家能够从官网 📘 用户指南、📘 教程 和 📘 代码示例 中学习,或返回B站观看 📘 视频教程 也举荐下载珍藏 ShowMeAI 的 📘 Matplotlib速查表,以便疾速查找所需性能。

💡 Seaborn

另一个风行的 Python 数据可视化框架是 Seaborn,它相比 Matplotlib 更为简洁,也拓展了很多剖析性能和出现模式。

大家同样能够通过 Seaborn 的 📘 用户指南和教程 对其进行学习,或返回观看 📘 视频教程。也欢送浏览 ShowMeAI 总结的 📘 Seaborn速查表,以及 Seaborn 可视化教程 Seaborn工具与数据可视化

💡 Plotly

Plotly 是另外一个用于创立交互式数据可视化的 Python 开源工具库。 Plotly 构建在 Plotly JavaScript 库(plotly.js) 之上,可用于创立基于 Web 的数据可视化,这些可视化能够显示在 Jupyter 笔记本或应用 Dash 的 Web 应用程序中,或保留为独自的 HTML 文件。

它提供了多达40+种图表类型,包含散点图、直方图、折线图、条形图、饼图、误差线、箱线图、多轴、迷你图、树状图和 3-D 图表(甚至包含等高线图,这在其余数据可视化库中并不常见)。大家能够通过 📘 官网用户指南 进行学习和应用。

💡 Bokeh

Bokeh 是一个 Python 库,用于为古代 Web 浏览器创立交互式可视化。 它能够构建精美的图形,从简略的绘图到带有流数据集的简单仪表板。 应用 Bokeh,能够创立基于 JavaScript 的可视化,而无需本人编写任何 JavaScript。

大家能够通过 Bokeh 的 📘 官方网站 和 📘 示例库 理解它的一系列用法。也举荐大家下载珍藏 ShowMeAI 的 📘 Bokeh速查表,疾速查找所需性能。

💡 Altair

Altair 是 Python 的申明性统计可视化库,基于 Vega 和 Vega-Lite。 Altair 的 API 简略、敌对,能够用起码的代码产生丑陋而无效的可视化成果。大家能够通过官网的 📘 Altair Notebook Examples 学习Altair工具库的应用。

形式2:自动化EDA工具库

💡 pandas-profiling

很多做过 Python 数据分析的同学都很相熟 Pandas 的 describe 函数,pandas-profiling 通过其低代码接口扩大了对应的性能,将信息以报告的模式出现。 pandas-profiling 库主动从 pandas DataFrame 生成配置文件报告,整个过程甚至只须要两三行代码。

pandas-profiling 会对单字段和关联字段进行剖析。对于数据集的每一列(字段),它会剖析如下的内容并出现在交互式 HTML 报告中:

  • 类型推断:字段列的类型
  • 要点:类型、惟一值、缺失值
  • 分位数统计:包含最小值、Q1、中位数、Q3、最大值、范畴、四分位间距
  • 描述性统计:包含均值、众数、标准差、总和、中值相对差、变异系数、峰度、偏度等
  • 直方图:分类和数字
  • 相关性:Spearman、Pearson 和 Kendall 矩阵
  • 缺失值:矩阵、计数、热图和缺失值的树状图
  • 文本剖析:理解文本数据的类别(大写、空格)、脚本(拉丁文、西里尔文)和块(ASCII)
  • 文件和图像剖析:提取文件大小、创立日期和尺寸,并扫描截断的图像或蕴含 EXIF 信息的图像

大家能够在 pandas-profiling 的我的项目 📘 GitHub 页面获取具体应用办法,简略的数据分析与报告生成过程能够只通过如下1行命令生成(在命令行运行)。

pandas_profiling --title "Example Profiling Report" --config_file default.yaml data.csv report.html

或者在Python中通过如下几行代码实现:

# 读取数据
df = pd.read_csv(file_name)
# 数据分析
profile = ProfileReport(df, title="Data Report", explorative=True)
# html剖析报告生成
profile.to_file(Path("data_report.html"))

💡 Sweetviz

Sweetviz 的性能与 pandas-profiling 很类似。 它是一个开源 Python 库,可生成精美的高信息量后果报告,只需两行代码即可启动探索性数据分析过程。 输入是一个齐全独立的 HTML 报告(而且能够残缺交互式操作)。

Sweetviz的特色

  • 类型推断
  • 摘要信息
  • 指标字段剖析
  • 显示指标列与其余特色的关联剖析
  • 可视化和比照

SweetViz的官网代码能够在 📘 GitHub 找到。剖析与报告生成只须要如下 2 行代码:

# 数据分析
my_report = sv.analyze(data)
# 报告生成
my_report.show_html()

下图为应用 Sweetviz 生成的报告。

💡 AutoViz

AutoViz 是另外 1 个自动化 EDA 框架。 它在性能方面与 Sweetviz 和 pandas-profiling 也比拟相似。 AutoViz 只需一行代码即可对任何数据集进行主动可视化,它还能够实现主动字段抉择,找到最重要的特色字段进行剖析可视化,运行速度也十分快。

AutoViz能够联合Bokeh做交互式数据摸索剖析,具体教程大家能够在官网 📘 AutoViz 示例 Notebook 找到。外围代码如下:

AV = AutoViz_Class()
_ = AV . AutoViz(filename)

下图所示为应用 AutoViz 生成的报告。

形式3:数据分析工具软件

💡 Microsoft Power BI

Power BI 是由 Microsoft 开发的交互式数据可视化软件,次要关注商业智能。 它是 Microsoft Power Platform 的一部分。 Power BI 是软件服务、应用程序和连接器的汇合,它们协同工作,将不相干的数据源转变为连贯、视觉沉迷式和交互式见解。 能够通过间接从数据库、网页或电子表格、CSV、XML 和 JSON 等结构化文件中读取数据来输出数据。

不过,Power BI 不是开源的,它是一款付费企业工具,提供收费桌面版本。 大家能够从 📘 官网学习指南 学习 Power BI。

💡 Tableau

Tableau 是用于数据分析和商业智能的当先数据可视化工具。 Gartner 的魔力象限将 Tableau 列为剖析和商业智能畛域的领导者。Tableau 是一种工具,它正在扭转咱们应用数据解决问题的形式——使人们和组织可能充分利用他们的数据。

下图所示为应用 Tableau 生成的报告。大家返回B站观看 📘 1小时速学视频教程

参考资料

  • 📘 Matplotlib 官网教程: https://matplotlib.org/stable/tutorials/index.html
  • 📘 Matplotlib 常识速查表: http://www.showmeai.tech/article-detail/103
  • 📘 Seaborn 数据可视化教程: http://www.showmeai.tech/article-detail/151
  • 📘 Seaborn 常识速查表: http://www.showmeai.tech/article-detail/105
  • 📘 Plotly 官网教程: https://plotly.com/python/getting-started/
  • 📘 Bokeh 官网教程: http://docs.bokeh.org/en/latest/
  • 📘 Bokeh 常识速查表: http://www.showmeai.tech/article-detail/104
  • 📘 Altair Notebook Examples: https://github.com/altair-viz/altair_notebooks
  • 📘 pandas-profilling 具体教程: https://github.com/ydataai/pandas-profiling
  • 📘 SweetViz 官网代码: https://github.com/fbdesignpro/sweetviz
  • 📘 AutoViz 示例: https://github.com/AutoViML/AutoViz/tree/master/Examples
  • 📘 Power BI 官网学习指南: https://powerbi.microsoft.com/en-ca/learning/

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理