本站点文档内容均翻译自code.visualstudio.com,仅供个人学习,如有差异请以官网为准。

在 VS Code 中使用 Data Wrangler 入门指南

Data Wrangler 是一个集成在 VS Code 和 VS Code Jupyter Notebooks 中的代码中心数据查看和清理工具。它提供了一个丰富的用户界面来查看和分析您的数据,显示有洞察力的列统计信息和可视化,并在您清理和转换数据时自动生成 Pandas 代码。

以下是从 notebook 中打开 Data Wrangler 的一个示例,以使用内置操作来分析和清理数据。然后将自动生成的代码导出回 notebook。

一个从 notebook 打开 Data Wrangler 的 GIF,浏览数据,从查看模式切换到编辑模式,应用数据转换,并将生成的 Python 代码导出回 notebook。

本文件涵盖如何:

  • 安装和设置数据整理器
  • 从笔记本中启动数据整理器
  • 从数据文件启动数据整理器
  • 使用数据整理器来探索您的数据
  • 使用Data Wrangler对您的数据进行操作和清理
  • 编辑并导出数据整理代码到一个笔记本
  • 故障排除和提供反馈

设置您的环境

  1. 如果您还没有这样做,请安装Python重要: Data Wrangler仅支持 Python 3.8 或更高版本。
  2. 安装Visual Studio Code.
  3. 安装数据整理器扩展

当你第一次启动Data Wrangler时,它会问你想连接到哪个Python内核。它还会检查你的机器和环境,以确定是否安装了所需的Python包,例如Pandas。

以下是Python和Python包所需版本的列表,以及它们是否由Data Wrangler自动安装:

名字 最低要求版本 自动安装
Python 3.8
熊猫 0.25.2 是的

如果在你的环境中找不到这些依赖项,Data Wrangler 将尝试为你安装它们皮普如果 Data Wrangler 无法安装依赖项,最简单的解决方法是手动运行使用pip安装,然后再次启动Data Wrangler。这些依赖项是Data Wrangler所必需的,以便它可以生成Python和Pandas代码。

开放数据整理师

无论何时你在Data Wrangler中,你都处于一个受限的环境中,这意味着你可以安全地探索和转换数据。在你明确导出更改之前,原始数据集不会被修改。

从 Jupyter Notebook 启动数据 Wrangler

有三种方法可以从前端 Notebook 启动 Data Wrangler

一个显示从笔记本进入数据整理器的截图

  1. Jupyter > 变量面板中,任何支持的数据对象旁边,您都可以看到一个启动Data Wrangler的按钮。
  2. 如果你的笔记本中有Pandas数据框,现在你可以在运行输出数据框的代码后,在单元格底部看到一个在数据整理器中打开“df”按钮(其中“df”是你的数据框的变量名)。这包括1)df.head(), 2)df.tail(), 3)显示(df), 4)打印(df), 5)输入:df输入:.
  3. 在笔记本工具栏中,选择“查看数据”,会列出笔记本中支持的所有数据对象。然后,您可以选择要在一个数据整理器中打开的变量。

直接从文件中启动数据整理器

你也可以直接从本地文件(例如一个 )启动 Data Wrangler输入:.csv) 要做到这一点,请在 VS Code 中打开包含您要打开的文件的任何文件夹。在文件资源管理器视图中,右键单击该文件并点击在数据整理器中打开.

显示从文件进入数据整理器的截图

Data Wrangler目前支持以下文件类型

  • 输入:.csv输入:/.tsv
  • 输入:.xls输入:/.xlsx
  • .parquet

根据文件类型,您可以指定分隔符和/或工作表。

一个截图,显示在直接从文件打开时您可以在 Data Wrangler 中设置的参数

您还可以将这些文件类型默认设置为使用Data Wrangler打开。

UI 之旅

Data Wrangler在处理数据时有两种模式。每个模式的详细信息在下面的各节中解释。

  1. 查看模式: 查看模式优化了界面,使您可以快速查看、筛选和排序您的数据。此模式非常适合对数据集进行初步探索。
  2. 编辑模式: 编辑模式优化了界面,使您可以对数据集应用转换、清理或修改。当您在界面中应用这些转换时,Data Wrangler会自动生成相关的Pandas代码,这可以导出到您的笔记本中以供重复使用。

注意:默认情况下,Data Wrangler以查看模式打开。您可以在设置编辑器中更改此行为。输入:.

在Visual Studio Code中设置Data Wrangler默认模式的截图

查看模式界面

显示数据整理器在查看模式下用户界面中不同组件的截图

  1. 数据概要面板显示了您的整个数据集或选定列的详细摘要统计数据。

  2. 您可以从列标题菜单中对任何数据过滤器/排序应用到该列上。

  3. 查看编辑 模式之间切换,以访问内置数据操作。

  4. 快速见解标题是您可以快速查看每个列的有价值信息的地方。根据列的数据类型,快速见解显示数据的分布或数据点的频率,以及缺失和不同的值。

  5. 数据网格提供了一个可滚动的面板,您可以在此查看整个数据集。


编辑模式界面

切换到编辑模式会在Data Wrangler中启用额外的功能和用户界面元素。在以下截图中,我们使用Data Wrangler将最后一列中的缺失值替换为该列的中位数。

显示数据整理器编辑模式下用户界面中不同组件的截图

  1. 面板是您可以搜索Data Wrangler的所有内置数据操作的地方。这些操作按类别组织。

  2. 清理步骤面板显示了之前应用的所有操作列表。它使用户能够撤销特定操作或编辑最近的操作。选择一个步骤将在数据差异视图中突出显示该操作的更改,并显示与此操作相关的生成代码。

  3. 导出菜单允许您将代码导出回Jupyter Notebook或导出数据到新文件。

  4. 当你选择了一个操作并预览其对数据的影响时,网格上会覆盖一个数据差异视图,显示你对数据所做的更改。

  5. 代码预览部分显示了在选择操作时Data Wrangler生成的Python和Pandas代码。当未选择任何操作时,它保持为空。您可以编辑生成的代码,这将导致数据网格突出显示对数据的影响。

数据整理操作

内置的数据整理操作可以从操作面板中选择。

数据整理器操作面板的截图

下表列出了Data Wrangler初始发布版本中当前支持的Data Wrangler操作。我们计划在不久的将来添加更多操作。

操作 描述
排序 按列升序或降序排序
过滤器 根据一个或多个条件筛选行
计算文本长度 创建一个新列,其值为文本列中每个字符串值的长度。
独热编码 将分类数据拆分为每个类别一个新的列
多标签二值化器 使用分隔符将分类数据拆分为每个类别一个新的列
从公式创建列 使用自定义的Python公式创建一列
更改列类型 更改列的数据类型
删除列 删除一个或多个列
选择列 选择一个或多个列保留,其余列删除
重命名列 重命名一个或多个列
克隆柱 创建一个或多个列的副本
删除缺失值 删除包含缺失值的行
删除重复行 删除所有在一个或多个列中具有重复值的行
填充缺失值 用新值替换缺失值的单元格
查找和替换 用匹配模式替换单元格
按列分组并聚合 按列分组并聚合结果
去除空白字符 移除文本开头和结尾的空白字符
拆分文本 根据用户定义的分隔符将一列拆分为多列
将第一个字符大写 将第一个字符转换为大写,其余字符转换为小写
将文本转换为小写 将文本转换为小写
将文本转换为大写 将文本转换为大写
字符串示例转换 自动对您提供的示例中检测到的模式进行字符串转换
通过示例进行日期时间格式化 自动对您提供的示例中检测到的日期时间格式进行格式化
新栏目:以例论事 当从您提供的示例中检测到模式时,自动生成一列。
刻度最小/最大值 将数值列缩放至最小值和最大值之间
圆形 将数字四舍五入到指定的小数位数
向下取整 将数字向下舍入到最接近的整数
向上取整 将数字四舍五入到最接近的整数
自定义操作 根据示例和现有列的推导自动创建新列

如果有一些操作在 Data Wrangler 中缺失,而你希望 Data Wrangler 能够支持这些操作,请在我们的 Data Wrangler GitHub 仓库 提出功能请求。

修改先前的步骤

生成的代码的每一步都可以通过清理步骤面板进行修改。首先,选择您要修改的步骤。然后,当您更改操作(通过代码或操作面板)时,数据视图中会突出显示您更改的影响。

显示如何修改之前步骤的截图

编辑和导出代码

一旦你完成了在Data Wrangler中的数据清理步骤,有三种方法可以将清理后的数据集导出从Data Wrangler。

  1. 将代码导出回Notebook并退出:这会在你的Jupyter Notebook中创建一个新的单元格,包含你生成的所有数据清理代码,并将其打包成一个Python函数。
  2. 将数据导出到文件: 这将把清理后的数据集保存为新的CSV或Parquet文件到您的机器上。
  3. 将代码复制到剪贴板: 这将复制Data Wrangler为数据清理操作生成的所有代码。

数据整理器中导出菜单的截图

搜索列

要查找数据集中的特定列,请选择转到列,然后在数据整理工具栏中搜索相应的列。

搜索列功能的截图

故障排除

通用内核连接问题

对于一般的连接问题,请参阅上面的“连接到Python内核”部分,了解其他连接方法。要调试与本地Python解释器选项相关的问题,潜在的解决方法之一是安装不同版本的Jupyter和Python扩展。例如,如果安装了扩展的稳定版本,您可以安装预发布版本(反之亦然)。

要清除已缓存的内核,您可以运行数据整理器:清除缓存的运行时 从命令面板发出命令 ⇧⌘P (Windows, Linux Ctrl+Shift+P

打开数据文件会Unicode解码错误

如果你遇到一个Unicode解码错误当直接从 Data Wrangler 打开数据文件时,这可能是由两个可能的问题引起的:

  1. 您尝试打开的文件编码与其他编码不同UTF-8
  2. 文件已损坏。

要解决此错误,您需要从 Jupyter Notebook 打开 Data Wrangler,而不是直接从数据文件中打开。使用 Jupyter Notebook 通过 Pandas 读取文件,例如使用 read_csv 方法。在 方法,使用编码和/或编码错误参数来定义使用的编码或如何处理编码错误。如果你不知道这个文件可能适用的编码,可以尝试使用库如chardet来尝试推断出一个适用的编码。

问题和反馈

如果您遇到问题、有功能请求或其他任何反馈,请在我们的 GitHub 仓库上提交一个 Issue:https://github.com/microsoft/vscode-data-wrangler/issues/new/choose

数据和遥测

Microsoft Data Wrangler 扩展程序为 Visual Studio Code 收集使用数据并将其发送给 Microsoft,以帮助改进我们的产品和服务。阅读我们的隐私声明以了解更多信息。此扩展程序尊重遥测.遥测级别在 https://code.visualstudio.com/docs/configure/telemetry 中可以了解更多关于设置的信息。