1.提升标题

在Excel中第一行为标题行,从第二行开始才是数据,但在Power Query中,从第一行开始就需要是数据记录,标题在数据之上。一般情况下,Power Query会自动完成提升这个步骤,如果没有,或者需要手动设置时,单击功能栏的“将第一行用作标题”就可以了,如图2-3-1所示。

单击“将第一行用作标题”旁边的下拉按钮,还有一个“将标题作为第一行”选项,实际上就是拉低标题,这个功能也特别有用。

2.更改数据类型

设置正确的数据类型非常重要,在后期数据建模和可视化过程中,很可能出现一些意想不到的错误,最后发现是数据类型设置得不对,所以一开始就要养成把数据更改为合适类型的好习惯。有两种方式更改数据类型。

3.删除错误/空值

导入后的数据,有可能出现错误(Error)或者空值(null),根据分析的需要,想要删掉错误和空值,可以通过右键单击该字段选择“删除错误”,或通过单击“筛选”按钮去掉相应勾选来完成,如图2-3-3所示。

4.删除重复项

在Power Query中删除重复项非常简单,选中需要删除的列,右键单击后选择“删除重复项”即可,如图2-3-4所示。

5.填充

在Excel数据中经常会遇到合并单元格的情况,导入到Power Query后就变成了空值,如图2-3-5所示。

因此需要把数据补充完整,在Power Query中操作很简单,直接向下填充即可,如图2-3-6所示。


这里用的是向下填充,根据需要,还有向上填充的功能。

6.合并列

在Power Query中选择需要合并的列,然后在菜单栏中单击“合并列”,弹出合并列窗口,可以设置合并列之间的分隔符,例如图2-3-7,把“区域”和“城市”两列合并,横线作为分隔符。

关于新生成的合并列的列名,可以在合并列时,提前输入新的列名,也可以在合并以后,双击列名来更改。

7.拆分列

不但要会合并列,我们还要会拆分列。很多数据挤在一列的情况很常见,学会如何拆分就非常重要。Power Query中的拆分列类似Excel中的分列,不过PowerQuery的功能更强大。比如把刚才合并的列再拆分一下,以横线为分隔符,又变成合并前的格式了,如图2-3-8所示。


在Power Query中,可以选择按字符数、数字或字母来分列,如果列中包含多个分隔符,还可以选择按哪个位置的分隔符来拆分。

8.分组

分组就是对明细数据进行汇总统计,比如图2-3-8中拆分后的数据,我们要计算各区域的1月合计金额,单击“分组依据”,选择字段名为“区域”,操作方式选择为“求和”,求和对象为“1月”,如图2-3-9所示。

9.提取

Power Query可以按照长度、首字符、尾字符、范围等来提取字符,比如提取前2个字符,如图2-3-10所示。

10.行列转置



11.行列操作

12.逆透视列

由于数据分析的需要,我们经常要将二维表变为一维表,在Excel中需要很多操作步骤才能完成,而在Power Query中,通过逆透视功能,可以一键将二维表变为一维表。

以前面的数据为例,可以选中需要逆透视的列,单击“逆透视列”,或者选中不需要逆透视的列,单击“逆透视其他列”,两种方式效果是一样的,哪种方便就用哪种,逆透视的效果如图2-3-15所示。

13.透视列

做分析需要一维表,而为了展现的需要,常常还要把一维表变成二维表,这类似Excel中的数据透视表功能。在Power Query中同样可以一键透视,比如把刚才的一维表变成原样,选中“属性”列,透视值列选择“值”,如图2-3-16所示。


单击“确定”就变回原来的二维表了,如图2-3-17所示。

上述这些功能都是在原表数据基础上的分分合合,做数据分析的时候还经常需要在原有数据的基础上增加一些辅助数据,比如加入新列、新行,或者从其他表中添加进来更多维度的数据,这些就是数据丰富的过程,接下来我们进行介绍。

14.添加列

Power Query中添加列有添加重复列、索引列、条件列、自定义列、示例中的列等形式,如图2-3-18所示。
下面分别介绍添加列的这几种形式。
(1)添加重复列添加重复列就是复制选中的某一列,以便对该列的数据进行处理而不损坏原有列的数据,如图2-3-19所示。


(2)添加索引列
索引列就是为每行增加一个序号,记录每一行所在的位置,可以选择从0或1开始,比如为下表添加索引列,从1开始,结果如图2-3-20所示。

(3)添加条件列

单击添加条件列,在弹出的窗口中输入指定的条件,比如根据1月的数据,如果大于300,返回“一级”,否则返回“二级”,如图2-3-21所示。


这个条件其实就相当于Excel中的IF函数,得到的结果如图2-3-22所示。

(4)添加自定义列

自定义列就是用M函数(关于M函数,2.5节会专门介绍)生成新的一列,比如添加一列1月和2月的合计数,就可以利用添加自定义列的功能,如图2-3-23所示。


Power Query中的字段用[ ]框住,这里[1月]和[2月]不需要手动输入,直接单击右边的字段名就可以,结果如图2-3-24所示。


(5)添加示例中的列

该功能相当于Excel中的智能填充,单击“示例中的列”,可以选择按所选内容或者按所有列来分析,在弹出的窗口中,只要输入前两行数据,系统根据两个示例,自动分析所需要的数据,并填充到所有行。

比如从城市列中提取区号数字,可以输入前两行,下面的会自动显示,如图2-3-25所示。


15.追加查询

追加查询是在现有记录的基础上,在下方添加新的行数据,它是一种纵向合并。例如有两个表格式相同,需要合并为一个表,单击“追加查询”,如图2-3-27所示。


两个表追加查询的结果如图2-3-28所示。

16.合并查询

如果说追加查询是纵向合并,那么合并查询就是横向合并,它相当于Excel的VLOOKUP函数,就是匹配其他表格中的数据,不过Power Query中的合并查询要比VLOOKUP函数的功能强大得多,并且操作也更简单。

例如有两个表,一个是每个城市的数据表,另外一个表是包含这些城市基础信息的表。现在需要在数据表中添加每个城市对应的电话区号,单击“合并查询”,如图2-3-29所示。

先选择两个表相互匹配的字段,单击这两个表的“城市”列,下方联结种类选择“左外部:第一个表的所有行,第二个表的匹配行”,就得到了合并后的表,如图2-3-30所示。

合并查询匹配过来的是一个表,所以每行都显示为Table,为了得到某一列,可以单击右上角的展开,选择我们需要的字段,合并查询就完成了。表中增加了每个城市对应的区号,如图2-3-31所示。




通过这种方式可以一次性匹配多列,如图2-3-30所示,展开的时候,选择需要的列就可以了,而VLOOKUP函数一次只能匹配一列,当需要一次性匹配多列时,Power Query的优势更加明显。

以上介绍的是Power Query的各项数据处理操作,基本上涵盖了常用的界面功能。虽然看上去都很简单,但若能熟练并灵活运用,基本能完成大部分数据处理的工作。

Power Query数据清洗的常用操作相关推荐

  1. 使用Pyecharts进行全国水质TDS地图可视化全过程2:使用Power Query 进行百万行级别数据匹配

    简介:本文介绍使用Excel  Power Query进行数据匹配.利用这种方式,可以在几分钟内完成百万级别数据量的匹配. 在TDS可视化地图项目中,我们的原始数据没有TDS和具体安装地址的对应,我们 ...

  2. Power Query M函数_我常用的玩法

    跟据日期字段,为表格增加年. 月.日3个字段 = Table.FromRows(List.Transform(Table.ToRows(ZCESRSET_Table),each _ & [a= ...

  3. Excel Power Query M 常用日期处理

    Excel 数据分析里面,Power Query用来处理日期 let源 = Excel.CurrentWorkbook(){[Name="表3"]}[Content],改为日期类型 ...

  4. BI神器Power Query(8)-- PQ从文本文件导入数据(2/2)

    文本文件是大家经常使用的数据文件格式,PQ可以方便的导入文本文件中的数据,然后在Excel可以进行后续加工和处理. 依次单击[数据]选项卡>[新建查询]>[从文件],其中的[从CSV]和[ ...

  5. Power Query 自学教程

    挖坑很久都没填,突然发现这篇文章阅读量很高,大半年过去了,虽然距离Power Query大神还有很远很远,但是通过学习和摸索,勉强算得上能够熟练操作80%+常用功能. 在使用Power Query半年 ...

  6. powerquery分组_使用Excel Power Query进行文本分组合并

    使用场景 如图所示,现需要统计每个班级的学生名单,以"."分隔.Excel目前没有合并单元格并保留所有内容的直接功能,如果序号合并的数量比较少,可以采用传统办法手工一一合并,或者是 ...

  7. [Power BI] 认识Power Query和M语言

    数据清洗,可理解为数据整理,对从各类数据源导入的数据,通过一定的方法(如数据的增删改.转换.逆透视.合并等)进行处理,整理成符合要求的数据,然后加载到数据模型中,进行数据可视化 在Power BI中, ...

  8. EXCEL中的POWER QUERY功能简介

    点击蓝字 关注我们 一 前言 如果你在工作中或项目中需要大量使用EXCEL处理数据, 那么请务必了解一下POWER QUERY. 因为它将极大的优化你的工作: 解决一些EXCEL公式性能很差的情况 解 ...

  9. Oracle 数据库常用操作语句大全

    原文:Oracle 数据库常用操作语句大全 一.Oracle数据库操作 1.创建数据库      create database databasename 2.删除数据库      drop data ...

最新文章

  1. [微信小程序]滚动选择器
  2. 泛型java博客园,Java深度历险之Java泛型
  3. activeMQ安装9(window下)
  4. How to bind multiple properties with formatter on one control
  5. so把asp页面生成静态的html,23、asp系列课程--server.URLEncode方法和server.HTMLEncode方法...
  6. 学业水平考试容易过吗_2019年12月贵州省普通高中学业水平考试真题汇总
  7. 用matlab解线性规划题目,用MATLAB软件解线性规划范例
  8. BigGAN_用于高保真自然图像合成的大规模 GAN 训练
  9. mapped file has no Team ID and is not a platform binary (signed with custom identity or adhoc?
  10. C#调用存储过程带输出参数或返回值分类(转)
  11. Android studio制作计算器源代码
  12. 用 Compose 实现个空调,为你的夏日带去清凉
  13. 黄褐斑的食疗用什么,姬净美效果不错
  14. 上拉电阻,下拉电阻的实现原理
  15. CSDN 编程挑战 博弈游戏2 斐波那契
  16. 对象创建过程 流程解析图 详细之极
  17. 人生感悟:他们这样爬出烂泥般的人生
  18. 一年涌入3000家“他经济”现资本众生相
  19. Rasa学习笔记1-rasa响应消息的步骤和名词解释
  20. 去掉每行行首空格及行尾空格,无空行的方法

热门文章

  1. .net全套视频教程
  2. 【LOJ520】「LibreOJ β Round #3」绯色 IOI(开端)
  3. php采集(php小偷)程序设计教程
  4. POJ1753 filp game
  5. 系统分析师考试资料:投资回报率计算
  6. 常见的Android数据传递方法汇总
  7. 单片机printf使用
  8. 服务器宝塔面板配置远程连接数据库
  9. asp.net连接MySQL 浮兮影视
  10. 今日头条面试——社招