【DTale】数据分析强大工具DTale的使用
简单介绍:
dtale官方api:https://pypi.org/project/dtale/
dtale是pandas的GUI工具,提供数据的所有详细信息,是一个强大的数据可视化数据分析工具。
使用dtale:
启动、数据加载
dtale支持多种文件格式,包括CSV、TSV、XLS、XLSX。它是一个以Flask 为后端,React 作为前端构建的,通过pip安装即可。
pip install dtale
注:在安装的过程中,可能会出现卡顿,下载失败的情况,如果是因为网络不好的可以选择,添加镜像下载
pip install -i https://pypi.douban.com/simple dtale
(也可使用清华镜像下载),如果还失败(与我一样)缺少某个wheel文件,就搜此wheel文件到本地,然后先安装缺少的wheel文件,再重新执行pip命令即可。
两种启动 dtale 的方式:
import dtale
dtale.show(open_browser=True)
import dtale
import pandas as pd
##需要导入自己的数据
readFileName="岭回归.csv"
df=pd.read_csv(readFileName)#pandas读入csv文件
dtale.show(df,open_browser=True)#dtale show pandas所读dataframe
浏览器会自动跳出dtale的功能页面,若没跳出网页,可以试试这个网址:
http://desktop-ndgd86j:40000/dtale/main/1
功能介绍:
数据的导入的方式:
主菜单选项:
在主菜单中,其实包含了列菜单的全部功能,但在主菜单中使用时,更加普适。比如,可以在单个或者多个列,而非手动选择了。下面是几个核心功能介绍。
0. 切换语言
1. 创建列
可以创建新列或者从已有的列中创建列。像建模前的特征工程也可以使用它来实现,比如使用两列执行算数运算来创建新列。同时,我们可以给创建的新列提供名称,以及设置数据类型。
2. 汇总数据
在 pandas
中,我们通过分组或数据透视表汇总数据。我们也可以用 dtale
做同样的事情。我们直接可以选择列、聚合函数以及最终数据集中所需的列即可,无需任何代码。pandas
中,分组就是groupby
方法。将dataFrame
中所有行按照一列或多列来划分,分为多个组,列值相同的在同一组,列值不同的在不同组。
3. 缺失率分析
缺失数据是所有数据集中都会经常出现的问题,因为没有数据集是完美的,它有意或无意地有很多缺失值。dtale
集成了 missingno
库来可视化数据集中存在的缺失值,同时它也提供矩阵、条形图、热图和树状图。功能:Missing Analysis
4. 绘图
绘图是数据科学EDA探索性分析阶段的重要步骤。dtale
集成 plotly
来创建交互式绘图。它可以提供折线图、条形图、散点图、饼图、词云图、热图、3D 散点图、表面图、地图、烛台图、树状图和漏斗图。不同类型的数据支持不同类型的绘图。功能极其强大。
5. 高亮功能
6. 代码导出、数据导出
在 dtale
中对数据框执行的所有操作都会自动转换为它们的 python / pandas / plotly 等效代码。可以通过单击每个操作和图表 GUI 中出现的导出代码选项来查看它们。下面是自动生成的一些代码。可以使用导出选项更改为 CSV 或 TSV 后导出数据集。
列菜单功能:
当单击列标题时,可以获得一个选项列表,选项的内容取决于该列的数据类型。比如下面类型:int64
,选项列表的共同点是按升序或降序排序。除此之外,对于不同类型的数据会有不同的过滤方法。
1. 冻结
锁定功能类似于excel中的首行冻结,将列锁定在最左侧,这样可以自由地滚动表格同时看到锁定的列了。
2.隐藏和删除
隐藏选项将会去掉表格中的某列,但它不会从实际地删除。当然,也可以从右上角的条中取消隐藏列。
删除选项将从数据框中永久删除列。它类似于 pandas
的 drop
函数。
3. 替换和类型转换
替换选项可以替换表中某些固定值或者填充空值。可以inplace=True
替换某列或者创建一个新列。同时,替换类型可以定义为:特定值、空格或特定字符串的替换。
例如下面,TRAFFIC_COUNT列,但存在了不应存在的文本99999999,例如这时候可以用 numpy nan (得符合数据类型)来替换这个异常值。
可以使用类型转换选项轻松地将某列的数据类型从字符串例如2022-01-20更改为日期时间,同时提供了inplace或new columns更改的选项:
4. 描述性统计
pandas
中的describe
函数有助于提供列或数据集的统计摘要。这里的 describe
一样,并且提供的信息比普通的 pandas
函数更多,它为每种数据类型提供了唯一的describe
摘要。
对于日期时间类型 column
,它提供以下详细信息:
另外,它还为特征生成了histogram
和 value_counts
图,对于整数类型的列,它提供了中心性、频率、峰度和偏度。它还表示箱线图、直方图、value_count
图和 QQ
图中的数据,对于字符串类型的列,它提供最常用的词及其频率、字符的详细摘要、词值计数图和值计数图。
5. 过滤
在dtale 中过滤数据非常简单,只需要指定所需的过滤器类型。下面的示例显示按交通量 > 200过滤数据集:
在筛选日期时间类型列中的数据时,也可以按日期范围筛选数据。对于字符串类型的列,可以通过以下方式过滤数据:
6. 方差报告
这个选项不适用于字符串类型值。方差报告基于以下两点来决定特征是否具有低方差:

7. 文本清洗
选项仅适用于字符串类型的值。文本清洗是数据科学项目的主要部分,如果使用正确的清洁类型,它可以提高模型性能。dtale 提供了可以应用于文本的所有可能的文本清理方法,只需选择要应用于文本的方法,工作将在后端即可完成。
其他详细dtale操作:https://pypi.org/project/dtale/