【DTale】数据分析强大工具DTale的使用

2023-11-08

简单介绍:

官网帅气的介绍图

dtale官方api:https://pypi.org/project/dtale/

dtalepandasGUI工具,提供数据的所有详细信息,是一个强大的数据可视化数据分析工具。

使用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 的方式:

  • 将DataFrame对象传递给 D-Tale 函数,在 Jupyter 单元中实例化 GUI。
import dtale
dtale.show(open_browser=True)
  • 不导入DataFrame对象的情况下初始化 D-Tale,显示为一个带有 GUI 的交互菜单来加载数据并提供各种其他选项。
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

功能介绍:

在这里插入图片描述
数据的导入的方式:

  • 从文件加载数据、从网站加载数据(需要传递网站的链接)可以从中获取 CSV、JSON、TSV 或 Excel 等文件。
  • 加载示例数据集。这些数据集可能需要一些后台下载才能从服务器获取数据集。 加载数据集后,就会像pandas一样呈现一个表格。
  • 表里的所有单元格都可以编辑,就像在 excel 中一样直接更改值。

主菜单选项:

在主菜单中,其实包含了列菜单的全部功能,但在主菜单中使用时,更加普适。比如,可以在单个或者多个列,而非手动选择了。下面是几个核心功能介绍。

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.隐藏和删除

隐藏选项将会去掉表格中的某列,但它不会从实际地删除。当然,也可以从右上角的条中取消隐藏列。
删除选项将从数据框中永久删除列。它类似于 pandasdrop 函数。

3. 替换和类型转换

替换选项可以替换表中某些固定值或者填充空值。可以inplace=True替换某列或者创建一个新列。同时,替换类型可以定义为:特定值、空格或特定字符串的替换。
例如下面,TRAFFIC_COUNT列,但存在了不应存在的文本99999999,例如这时候可以用 numpy nan (得符合数据类型)来替换这个异常值。
在这里插入图片描述
可以使用类型转换选项轻松地将某列的数据类型从字符串例如2022-01-20更改为日期时间,同时提供了inplace或new columns更改的选项:
在这里插入图片描述

4. 描述性统计

pandas 中的describe函数有助于提供列或数据集的统计摘要。这里的 describe 一样,并且提供的信息比普通的 pandas 函数更多,它为每种数据类型提供了唯一的describe摘要。
对于日期时间类型 column,它提供以下详细信息:
在这里插入图片描述
在这里插入图片描述
另外,它还为特征生成了histogramvalue_counts 图,对于整数类型的列,它提供了中心性、频率、峰度和偏度。它还表示箱线图、直方图、value_count 图和 QQ 图中的数据,对于字符串类型的列,它提供最常用的词及其频率、字符的详细摘要、词值计数图和值计数图。

5. 过滤

在dtale 中过滤数据非常简单,只需要指定所需的过滤器类型。下面的示例显示按交通量 > 200过滤数据集:
在这里插入图片描述
在筛选日期时间类型列中的数据时,也可以按日期范围筛选数据。对于字符串类型的列,可以通过以下方式过滤数据:
在这里插入图片描述

6. 方差报告

这个选项不适用于字符串类型值。方差报告基于以下两点来决定特征是否具有低方差:

  • 特征中的唯一值计数 / 样本大小 < 10%
  • 最常用值的计数/第二常用值的计数 > 20
  • 显示计算结果,并用直方图以呈现结果。
    在这里插入图片描述

7. 文本清洗

选项仅适用于字符串类型的值。文本清洗是数据科学项目的主要部分,如果使用正确的清洁类型,它可以提高模型性能。dtale 提供了可以应用于文本的所有可能的文本清理方法,只需选择要应用于文本的方法,工作将在后端即可完成。
在这里插入图片描述

其他详细dtale操作:https://pypi.org/project/dtale/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【DTale】数据分析强大工具DTale的使用 的相关文章

  • 使用Python开发Web应用程序

    我一直在用 python 做一些工作 但这都是针对独立应用程序的 我很想知道 python 的任何分支是否支持 Web 开发 有人还会建议一个好的教程或网站吗 我可以从中学习一些使用 python 进行 Web 开发的基础知识 既然大家都说
  • InterfaceError:连接已关闭(使用 django + celery + Scrapy)

    当我在 Celery 任务中使用 Scrapy 解析函数 有时可能需要 10 分钟 时 我得到了这个信息 我用 姜戈 1 6 5 django celery 3 1 16 芹菜 3 1 16 psycopg2 2 5 5 我也使用了psyc
  • 导入错误:没有名为 _ssl 的模块

    带 Python 2 7 的 Ubuntu Maverick 我不知道如何解决以下导入错误 gt gt gt import ssl Traceback most recent call last File
  • 如何等到 Excel 计算公式后再继续 win32com

    我有一个 win32com Python 脚本 它将多个 Excel 文件合并到电子表格中并将其另存为 PDF 现在的工作原理是输出几乎都是 NAME 因为文件是在计算 Excel 文件内容之前输出的 这可能需要一分钟 如何强制工作簿计算值
  • SQL Alchemy 中的 NULL 安全不等式比较?

    目前 我知道如何表达 NULL 安全的唯一方法 SQL Alchemy 中的比较 其中与 NULL 条目的比较计算结果为 True 而不是 NULL 是 or field None field value 有没有办法在 SQL Alchem
  • 打破嵌套循环[重复]

    这个问题在这里已经有答案了 有没有比抛出异常更简单的方法来打破嵌套循环 在Perl https en wikipedia org wiki Perl 您可以为每个循环指定标签 并且至少继续一个外循环 for x in range 10 fo
  • 从 scikit-learn 导入 make_blobs [重复]

    这个问题在这里已经有答案了 我收到下一个警告 D Programming Python ML venv lib site packages sklearn utils deprecation py 77 DeprecationWarning
  • Pandas Dataframe 中 bool 值的条件前向填充

    问题 如何转发 fill boolTruepandas 数据框中的值 如果是当天的第一个条目 True 到一天结束时 请参阅以下示例和所需的输出 Data import pandas as pd import numpy as np df
  • 如何将 numpy.matrix 提高到非整数幂?

    The 运算符为numpy matrix不支持非整数幂 gt gt gt m matrix 1 0 0 5 0 5 gt gt gt m 2 5 TypeError exponent must be an integer 我想要的是 oct
  • ExpectedFailure 被计为错误而不是通过

    我在用着expectedFailure因为有一个我想记录的错误 我现在无法修复 但想将来再回来解决 我的理解expectedFailure是它会将测试计为通过 但在摘要中表示预期失败的数量为 x 类似于它如何处理跳过的 tets 但是 当我
  • Python - 在窗口最小化或隐藏时使用 pywinauto 控制窗口

    我正在尝试做的事情 我正在尝试使用 pywinauto 在 python 中创建一个脚本 以在后台自动安装 notepad 隐藏或最小化 notepad 只是一个示例 因为我将编辑它以与其他软件一起使用 Problem 问题是我想在安装程序
  • 通过数据框与函数进行交互

    如果我有这样的日期框架 氮 EG 00 04 NEG 04 08 NEG 08 12 NEG 12 16 NEG 16 20 NEG 20 24 datum von 2017 10 12 21 69 15 36 0 87 1 42 0 76
  • 如何将 PIL 图像转换为 NumPy 数组?

    如何转换 PILImage来回转换为 NumPy 数组 这样我就可以比 PIL 进行更快的像素级转换PixelAccess允许 我可以通过以下方式将其转换为 NumPy 数组 pic Image open foo jpg pix numpy
  • 如何在 Django 中使用并发进程记录到单个文件而不使用独占锁

    给定一个在多个服务器上同时执行的 Django 应用程序 该应用程序如何记录到单个共享日志文件 在网络共享中 而不保持该文件以独占模式永久打开 当您想要利用日志流时 这种情况适用于 Windows Azure 网站上托管的 Django 应
  • 设置 torch.gather(...) 调用的结果

    我有一个形状为 n x m 的 2D pytorch 张量 我想使用索引列表来索引第二个维度 可以使用 torch gather 完成 然后然后还设置新值到索引的结果 Example data torch tensor 0 1 2 3 4
  • 在 Pandas DataFrame Python 中添加新列[重复]

    这个问题在这里已经有答案了 例如 我在 Pandas 中有数据框 Col1 Col2 A 1 B 2 C 3 现在 如果我想再添加一个名为 Col3 的列 并且该值基于 Col2 式中 如果Col2 gt 1 则Col3为0 否则为1 所以
  • glpk.LPX 向后兼容性?

    较新版本的glpk没有LPXapi 旧包需要它 我如何使用旧包 例如COBRA http opencobra sourceforge net openCOBRA Welcome html 与较新版本的glpk 注意COBRA适用于 MATL
  • 在python中,如何仅搜索所选子字符串之前的一个单词

    给定文本文件中的长行列表 我只想返回紧邻其前面的子字符串 例如单词狗 描述狗的单词 例如 假设有这些行包含狗 hotdog big dog is dogged dog spy with my dog brown dogs 在这种情况下 期望
  • 在 Python 类中动态定义实例字段

    我是 Python 新手 主要从事 Java 编程 我目前正在思考Python中的类是如何实例化的 我明白那个 init 就像Java中的构造函数 然而 有时 python 类没有 init 方法 在这种情况下我假设有一个默认构造函数 就像
  • Python:元类属性有时会覆盖类属性?

    下面代码的结果让我感到困惑 class MyClass type property def a self return 1 class MyObject object metaclass MyClass a 2 print MyObject

随机推荐

  • Python time time()方法返回的是秒

    描述 Python time time 返回当前时间的时间戳 1970纪元后经过的浮点秒数 语法 time 方法语法 time time 参数 NA 返回值 返回当前时间的时间戳 1970纪元后经过的浮点秒数 实例 以下实例展示了 time
  • Linux目录操作命令

    1 查看目录命令 ls 用法 ls 选项 目录名 常用选项 a 显示所有文件 包含隐藏文件 l 显示长文件信息 案例 查看 user下的所有文件 ls a user ls 文件或目录路径信息 ls d 查看目录信息 ls l 文件或目录信息
  • Unity Shader入门精要文章目录

    前言 从今天开始 我将每天开始学习一些有关于Shader的知识 并把所学到的知识简化 写成文章来供大家参考或者学习 一方面是为了巩固知识 另一方面是我也没有找到什么系统的文章来学习Shader的知识 我的Shader学习大部分是参考了Uni
  • GDI+ 中路径类使用总结

    背景 路径是一系列相互连接的直线和曲线 由许多不同类型的点所构成 用于表示复杂的不规则图形 GraphicsPath 类表示 要绘制一组图形 如线条 矩形 多边形和曲线等 可以通过 Graphcis 类的 DrawPath 方法一次性绘制
  • 《Python进阶系列》二十六:面试题目:[lambda x: x*i for i in range(4)]

    quad quad 闲着无聊 看了道面试题 瞬间涨姿势了 特地做个总结 题目 题目如下 lst lambda x x i for i in range 4 res m 2 for m in lst print res 上述式子的输出结果 预
  • VirtualBox中出现 UUID have already exists : 修改 UUID

    VirtualBox中出现UUID have already exists 解决方法 要点 C Program Files Oracle VirtualBox VBoxManage exe internalcommands sethduui
  • C++——vector

    文章目录 vector的介绍 vector的使用 为什么vector不提供find 排序 sort vector的模拟实现 搭一个最简单的架子 构造函数和析构函数 尾插 尾删 operator 迭代器 insert erase 迭代器失效
  • [caffe安装]配置环境过程中出现的问题及解决

    今天要跑一下Convolutional Autoencoder for Loop Closure 轻量级神经网络闭环方法 caffe安好之后编译程序出现以下错误 Scanning dependencies of target deeplcd
  • React 之常用组件类型

    无状态组件 主要用于内部没有状态更新操作的组件 同构props进行基本的数据渲染或常量展示 该类组件职责单一 有利于组件的高复用 const PureComponent props gt div props list map txt ind
  • 金融市场概览

    文章目录 金融市场的功能 金融市场的分类 主要金融机构 中国金融市场概况 本文简要展现真实世界中的金融市场的面貌 介绍其基本结构 主要玩家 交易的主要资产 以及主要的业务形式 金融市场的功能 金融是通过交易金融资产来实现资金通融 很容易想到
  • Qt学习笔记3:Qt工程的目录结构

    经过前两篇的学习 已经可以使用Qt空项目模板创建自己的工程了 通过本篇的学习 整理一下如果使用Qt工程的目录结构 使项目更规范和容易管理 当前的目录结构 如图所示 这是前篇中创建的工程 只有main cpp和widget cpp widge
  • postman-接口批量执行、接口串联

    一 接口批量执行 1 点击postman左侧Collections下面有个添加文件夹图标 就可以创建测试项目 2 该目录下还可以创建子目录 进行测试用例的细分 3 创建测试用例 创建接口测试用例 即新建http请求 选择请求方式 写好url
  • 【AUTOSAR】CCP协议的代码分析与解读(四)----CCP协议数据下载和上传

    数据下载 DNLOAD DNLOAD指令负责将CRO中的数据下载到ECU中 起始地址为先前设定的MTA0 下载完毕后MTA0指针自增 自增的字数为下载的字节数 DNLOAD命令的CRO数据场结构 如下所示 位 置 类 型 描 述 0 字节
  • redis&mariadb + keepalived 高可用

    目录 机器准备 安装后服务 redis 安装redis mariadb 安装mariadb 启动和配置 互为主从同步配置 keepalived keepalived安装 修改主从 keepalived的配置 主从配置 mariadb监控 主
  • Java实现数据结构----插入排序直接插入排序

    七大基于比较的排序之插入排序 直接排序 直接插入排序 原理 主要步骤 1 先假设第一个元素已经排好序 2 然后依次取出还需要进行排序的下一个元素 也就是排序完成的元素后面的下一个元素 取出下一个元素 设为待插入元素 在已经排序的元素序列中从
  • MySQL 数据库性能优化之缓存参数优化

    https blog csdn net truelove12358 article details 51956356 博客 学院 下载 图文课 论坛 APP 问答 商城 VIP会员 活动 招聘 ITeye GitChat 写博客 赚零钱 传
  • [构思]依据verilog源文件中的关键代码及其注释,使用脚本命令生成代码文档

    verilog代码文档的内容需求 生成文档的实现思路 依据verilog源文件中的关键代码及其注释 使用脚本命令生成代码文档 跟Doxygen工具功能类似 针对的场景是工程里的代码没有文档 阅读不方便 注释没有章法 代码越长 阅读直观感受越
  • RIP综合实验

    配置IP RI r1 int g 0 0 0 r1 GigabitEthernet0 0 0 ip address 12 0 0 1 24 Apr 6 2022 13 18 35 08 00 r1 01IFNET 4 LINK STATE
  • selenium数据提取学习(1)

    import time from selenium import webdriver 设置浏览器 driver webdriver Edge 控制浏览器访问地址 driver get https www baidu com time sle
  • 【DTale】数据分析强大工具DTale的使用

    简单介绍 使用dtale 启动 数据加载 功能介绍 主菜单选项 0 切换语言 1 创建列 2 汇总数据 3 缺失率分析 4 绘图 5 高亮功能 6 代码导出 数据导出 列菜单功能 1 冻结 2 隐藏和删除 3 替换和类型转换 4 描述性统计