探索性数据分析(EDA)是一种数据探索技术,用于理解数据的各个方面。它是在执行任何机器学习或深度学习任务之前最重要的步骤之一。数据科学家通过信息表示方法进行EDA程序,以探索、剖析和总结数据集的基本属性。EDA程序考虑了数据源的强大控制,使数据科学家能够通过发现数据模式、识别不一致性、检查假设或测试假设来找到他们需要的答案。
数据科学家利用探索性数据分析观察数据集能够揭示的更深层次的信息,超越了传统的数据展示或假设测试任务。这使他们能够深入了解数据集中的因素及其关系。探索性数据分析有助于识别明显的错误,区分数据集中的异常,获取联系,发现重要的元素,发现数据中的模式,并提供新的见解。
随着互联网上客户行为的增加、监控网络流量的精细化工具、手机的增多、网络赋能设备和IoT传感器的普及,这些是加速当前信息时代步伐的关键因素。在这个数字化时代,各种规模的组织都意识到数据可以在提高效率、盈利能力和动态能力方面发挥关键作用,从而增加销售额、收入和利润。
如今,大多数组织都面临着庞大的数据集,但仅仅拥有大量的信息并不能增强业务,除非企业调查可用的数据并推动组织发展。在数据科学项目或任何机器学习项目的生命周期中,超过60%的时间用于数据分析、特征选择、特征工程等。因为数据科学项目最重要的部分或支柱部分本身就是需要进行大量活动的部分,比如清理数据、处理缺失值、处理异常值、处理不平衡的数据集、如何处理分类特征等。因此,如果想在探索性数据分析中节省时间,可以使用像dtale、pandas profiling、sweetviz和autoviz这样的Python库来自动化任务。
本文讨论了四个重要的Python库。这些库如下:
这是一个在2020年2月推出的库,允许轻松地可视化pandas数据框。它有许多非常实用的功能,用于探索性数据分析。它使用flask后端和react前端。它支持交互式图表、3D图表、热图、特征之间的相关性、构建自定义列等。这是最著名且最受欢迎的。
pip install dtale
让深入探讨使用这个库进行探索性数据分析。首先,必须编写一些代码来启动d-tale交互式应用程序:
import dtale
import pandas as pd
df = pd.read_csv('data.csv')
d = dtale.show(df)
d.open_browser()
在这里,导入了pandas和dtale。使用read_csv()函数读取数据集,最后使用show和open_browser函数在浏览器中本地显示数据。它以与pandas相同的方式显示数据,但它有一个额外的功能,即在左上角有一个菜单,允许做很多事情,并且它显示了数据集中的列和行的数量。
这是一个开源的Python库,它生成交互式HTML报告并描述数据集的各个方面。主要功能包括处理缺失值、数据集的统计数据如均值、众数、中位数、偏度、标准差等,以及直方图和相关性图表等。
pip install pandas-profiling
让深入探讨使用这个库进行探索性数据分析。使用一个样本数据集开始pandas profiling,检查以下代码:
import pandas as pd
import pandas_profiling
import numpy as np
df = pd.read_csv('sample.csv')
pandas_profiling.ProfileReport(df)
以上代码的神奇输出如下。一个报告将出现,它返回数据集中的变量数量、行数、数据集中的缺失单元格、缺失单元格的百分比、重复行的数量和百分比。缺失和重复单元格数据对分析非常重要,因为它描述了数据集的更广泛的画面。报告还显示了内存的总大小。它还在输出的右侧显示了变量类型。
这是一个开源的Python库,用于在探索性数据分析中获取可视化,只需几行代码。该库可用于可视化变量和比较数据集。
pip install sweetviz
让深入探讨使用这个库进行探索性数据分析。使用一个样本数据集开始,检查以下代码:
import sweetviz
import pandas as pd
df = pd.read_csv('sample.csv')
my_report = sweetviz.analyze([df,'Train'], target_feat='SalePrice')
my_report.show_html('FinalReport.html')
它代表自动可视化。使用几行代码,可以对任何大小的数据集进行可视化。
pip install autoviz
样本代码:
from autoviz.AutoViz_Class import AutoViz_Class
AV = AutoViz_Class()
df = AV.AutoViz('sample.csv')