作者都是各自领域经过审查的专家,并撰写他们有经验的主题. 我们所有的内容都经过同行评审,并由同一领域的Toptal专家验证.
苏艾伦的头像

苏埃伦

Ellen在固定收益交易和投资组合管理方面的丰富经验使她成为分析和建模方面无与伦比的专家.

专业知识

以前在

瑞银华宝
分享

执行概要

得到是什么? & 变换?
  • 得到 & 变换是在Microsoft Excel和Power BI软件包中使用的数据转换工具.
  • 数据通常以非结构化格式到达, 这使得ETL(提取, 变换, 而加载)过程则是一个繁琐的手工工作过程.
  • 得到 & 变换自动化并加速了清理和组织这些原始数据的过程, 哪些最终有助于揭示观察结果和趋势的分析任务.
  • 得到提供的一些功能示例 & 转换包括:删除列, 分组数据, 将字符串拆分为子字符串, 并从另一个表追加行.
  • 要在Excel世界中维护工作流,请获取 & 变换是一个很好的工具,可以很容易地向相关的利益相关者解释和演示.
如何使用得到 & 变换?
  • 访问是通过 得到 & 转换数据 在Excel中 Data 选项卡. 在Power BI中,它存在于 外部数据 部分 首页。 选项卡.
  • 加载CSV:通过得到导入CSV & 变换允许对其进行清理,并使其“更窄”或“更宽”,以辅助数据旋转. 可以保存这些指令,然后在以后的导入中重复使用.
  • 处理文本字符串:作为对 文本到列 功能,得到 & 变换可以快速解析并将组合的文本和数字字符串分离到单独的列中.
  • 不同的数据源:具有广泛的输入文件接受, 可以使用不同的源,同时保持一致和规范化的输出质量.
  • 用代码定制:M语言是得到中使用的功能代码 & 转换后,就可以为更多定制请求编写定制查询.

在这个时代 数据的湖泊 以及pb级的数据库, 令人震惊的是,我仍然频繁地收到CSV格式的数据, 文本, 和Excel文件. 而现代分析则关注机器学习算法的前沿进展, 日常的苦差事 数据分析 仍然需要手工查找、编译和整理不同的数据类型吗.

对于金融分析师, 数据通常以Excel电子表格的形式出现, 但同样经常, 它是一个数据转储到CSV或查询到 SQL数据库. 有时, 数据排列在一个令人困惑的布局中,或者没有分析所需的所有组件. 对分析人员来说,花在清理这些数据上的时间是宝贵的浪费, 然而,有时这项任务被认为是一种必须容忍的邪恶.

得到什么? & 变换做?

这个常见问题的解决方案实际上很容易找到:Excel和Power BI有一整套数据转换工具,但很少有用户意识到这一点, 命名 得到 & 变换 (前身为Power Query). 利用其浸渍提取物, 变换, ETL功能使金融分析师能够无缝地链接到他们的数据源,并更快地获得见解.

当我们将数据加载到Excel或Power BI时, 我们通常必须对数据执行一些转换. 数据操作的一些例子包括:

  • 删除列,
  • 过滤数据,
  • 将数据分组,
  • 对数据进行旋转/反旋转,
  • 将字符串拆分为子字符串,
  • 从字符串中提取关键字,
  • 从另一个表追加行,以及
  • 连接两个维度表.

在下面的图表中,我们看到得到 & 变换在加载数据之前执行这个繁琐的预处理任务.

Excel 得到和变换进行数据预处理的示意图

为什么要用得到 & 变换?

为什么值得学习如何使用得到 & 变换? 好吧, 当我看到我个人使用这个功能的时候, 它为我提供了一套灵活的工具:

  • 将整个文本文件文件夹加载到单个数据表中
  • 将导出的会计文件转换为易于理解的布局
  • 将数百万个销售行加载到 力量主 直接
  • 将每日数据分组为可管理的月度结果,然后将其导入 Excel
  • 通过连接匹配的列来拼接来自另一个表的数据

通常,当我接收到新数据时,我会使用得到对其进行探索 & 在将其加载到力量主之前进行变换. 这使我能够看到可能需要哪些转换,并快速对数据执行一些支点和分组,以形成一个分析框架. 在很多情况下,在这个阶段,我会发现我需要更多的数据,或者有数据问题. 通过使用基于excel的平台, 我可以快速地迭代我的数据源来发现这些数据异常.

最终,决定留在Excel还是 将数据分析转移到另一个平台 将取决于受众和分析的可重复性和分布. 如果我的客户只使用Excel,那么我几乎总是使用得到 & 转换以加载数据, 力量主来执行分析, 和Excel来生成数据透视表和图表. 对客户来说,这将是无缝的,因为它都被安置在Excel中. 但是有了得到 & 基本上消除了转换、Excel变通和手动格式化.

但是,如果我的客户:

  1. 想要使用另一个可视化工具,
  2. 有多个将刷新数据的用户,或者
  3. 需要使用机器学习模型,

然后我将使用得到 & 转换仅用于初始数据探索,然后将繁重的工作转移到 R.

如何访问得到 & 在Excel或Power BI中转换

在以前版本的Excel中,Power Query是一个可以安装的插件 ETL 功能. 然而,在Excel 2016和Power BI中,这些工具更加紧密地集成在一起. 在Excel 2016中,可以通过 Data Tab键,然后 得到 & 转换数据 section.

如何从Excel 2016的数据选项卡访问获取和转换功能的屏幕截图

在Power BI中,该功能存在于 首页。 选项卡,在 外部数据 section.

如何从Power BI的外部数据部分的首页。选项卡访问得到和变换功能的屏幕截图

在本文中, 我的例子发生在Power BI中, 但界面与Excel几乎一模一样. 当它们出现时,我会指出它们之间的区别,所以教程应该对这两种类型的用户都有意义.

1. 加载CSV文件

为了帮助本教程, 我为一个虚构的销售户外装备和服装的零售商创建了几个销售数据示例. 在这些例子中, 数据将以不同的方式生成,以演示实际的数据转储方法.

作为一个初始示例,我们将看到数据作为大数据转储到CSV文件中. 复杂的因素是,数据用多个列表示不同的存储. 理想情况下,我们希望导入数据并将其转换为更可用的布局.

下面是原始CSV文件的截图:

从CSV可视化的原始数据的屏幕截图

我们为什么要改变这个? 利用这些应用程序中可能的关系功能. 我们将在进一步的讨论中看到这一点.

现在, 让我们假设我们需要将数据视为“更窄更高”的结构, 而不是“又宽又短”的. The first step is to load the CSV; then, we will start to “unpivot” the data.

演示加载和旋转过程

如您所见,数据的最终结构比初始数据窄,并且长得多. 另一点是, 当我们点击不同的动作时, 右侧的工具生成用于构建查询的应用步骤列表. 重要的是要理解这是在后台进行的,因为它将在稍后重新访问.

得到 & 在大多数情况下,转换在Power BI和Excel之间的外观和行为相似. 但是,在Excel中,点击后 关闭和加载,还有一个额外的提示. 在下面的图中,我们可以切换是否希望将数据加载到:

  1. Excel中的表格,
  2. 根据数据创建的数据透视表;
  3. 根据数据创建的数据透视图,或
  4. “只建立联系.”

此外,我们还可以选择是否这样做 将此数据添加到数据模型中. 选中此框将数据加载到 力量主 选项卡le. 如果我们要分析力量主中的数据,我建议选择 只创建一个连接 然后确保 将此数据添加到数据模型中 选项被选中. 如果数据在Excel行限制内, 我们更喜欢在Excel中进行分析, 然后选择 Table.

导入数据选项窗口的屏幕截图

在下一个片段中, 我们将看到,将数据格式化为长而细的原因是,我们不仅能够按商店,而且能够按地区和州分析销售情况. 为了完成这项任务,我们将导入一个表,将每个商店映射到一个地区和州. 我们将在下面看到,我们可以快速创建按这些不同分组显示销售额的报告.

演示使用区域和状态分组快速简便地创建报告

您可以想象这种类型的功能在Excel中的数据转换, 或Power BI, 可以有效地应用于任何情况下,我们有动态分组的数据, 如:

  • 将每日数据按周、月和季度进行汇总;
  • Grouping sales personnel into departments and regions; or
  • 将sku映射到产品类型.

虽然本文讨论的是CSV和其他Excel文件,但得到 & 变换处理各种各样的数据类型. 一旦创建了查询,就可以随着数据的变化对其进行刷新.

2. 处理文本字符串

为了演示得到 & 变换操作字符串的能力, 我创建了另一个数据集,它模仿了显示公司总账(GL)中会计交易的文本文件。.

显示公司总分类账中会计交易的表格

请注意帐号和名称是如何出现在同一个字符串中的? 在Power BI中,我们可以毫不费力地将帐号和名称解析到单独的字段中.

演示将帐号和名称解析为单独的字段

在这个视频中, 你可以看到,在我把这列分开之后, 该工具猜测Account字段的新左侧应该是一个数字, 它创建了一个" Changed Type1 "步骤. 因为我们最终希望这个字段是一个字符串, 我们可以在应用的步骤下手动删除该步骤.

接下来,我们用同样的数据 创建一个账目表 具有到帐户类别的映射.

演示如何创建带有从数据映射到帐户类别的帐户图表

为什么我们要经历所有这些步骤来映射几个账号? 一个真正的总账可能有数百甚至数千个账户. 正如我们所展示的,这个快速映射查询可以扩展到这个级别,而不需要额外的工作.

3. 使用不同的数据源

得到 & 变换支持许多不同的数据源. 虽然不是一个详尽的列表,但下面是一些例子:

文本文件 Excel 脸谱网 Adobe的分析 谷歌分析 Salesforce Azure 红移 火花 SQL Server SAP HANA Teradata 谷歌BigQuery

就我个人而言,我只尝试了上面列表中大约一半的连接. Each of the connectors I have used has been fairly robust; I have gotten from raw data to insights without a burdensome amount of work. 同样重要的是, 它充当不同数据源之间的验证器, 确保最终输出具有标准化的质量控制水平.

4. 用M语言个性化代码

在后台,得到 & 每当我们点击工具中的按钮或进行选择时,变换都会生成代码. 下面是如何访问我们创建的帐户映射查询代码的示例:

演示如何访问帐户映射查询代码的示例

代码使用了函数式语言 M,它为基本用例自动生成. 但是,对于更复杂的数据争用,我们可以编辑并编写自己的代码. 在大多数情况下,我只会对这段代码做一些小的修改. 在更复杂的转换中,我可能从头开始编写大部分代码 临时表,或执行更复杂的操作 连接.

得到的极限 & 变换

当您尝试导出超过一百万行时,Excel往往会达到其极限. 在使用得到转换数百万行的情况下 & 转换时,输出未分组行的唯一方法是通过繁琐的hack或变通方法. 我也发现得到 & 转换查询部署到多个用户时可能不稳定, 特别是在使用多个数据源和连接时. 在这些情况下,我总是使用R来部署可重复的数据争用. 最后,Excel不是为更高级的数据建模而构建的. 你可以很快地进行线性回归, 但除此之外, 你需要使用一个更严格的平台.

说了这么多,我发现Excel是我的大多数客户最熟悉的. 在金融分析师的武器库中,Excel仍然是最重要的工具. 通过合并得到的功能 & 变换, 通过可接受的数据源范围,Excel和Power BI变得更加强大.

了解基本知识

  • ETL的概念是什么?

    提取, 变换, 加载是将数据从不同的数据源移动到集中式数据仓库的过程. 对如何在Excel中转换数据感兴趣的分析师可以使用得到 & 变换的嵌入式ETL功能.

  • power BI的用途是什么?

    Power BI是微软的一款商业分析软件. 它为可视化数据和创建自动报告和仪表板提供了强大的功能.

  • 数据湖的用途是什么?

    数据湖是组织内所有数据源的单一存储库. 这可能包括结构化和非结构化的数据, 最终可以在需要的时候提取和处理.

聘请Toptal这方面的专家.
现在雇佣
苏艾伦的头像
苏埃伦

位于 帕克城,犹他州,美国

成员自 2016年9月20日

作者简介

Ellen在固定收益交易和投资组合管理方面的丰富经验使她成为分析和建模方面无与伦比的专家.

Toptal作者都是各自领域经过审查的专家,并撰写他们有经验的主题. 我们所有的内容都经过同行评审,并由同一领域的Toptal专家验证.

专业知识

以前在

瑞银华宝

世界级的文章,每周发一次.

订阅意味着同意我们的 隐私政策

世界级的文章,每周发一次.

订阅意味着同意我们的 隐私政策

金融专家

加入总冠军® 社区.