-爱数据学习社,职场学习分享平台-
![ffcdc88b73db8049a2e72117963eb8eb.png](https://i-blog.csdnimg.cn/blog_migrate/91e3c33f24ce584512545a84ade4775a.png)
作者:Jary Yuan
整理:爱数据Knox
数据清洗听起来很神秘,其实每一个职场人在用 Excel 的时候几乎都会重复的在做。在数据真正能为我们所用之前,对数据删除空行空列、清除空格打印字符、分列、替换等都是数据清洗过程。
将杂乱无章的数据整理成有规则的、可供分析的过程,可以称之为「数据清洗」。
导入 Power Query 查询编辑器的数据如下,我们通过菜单中的 10 个功能进行数据清洗。
![d4414127caefbd186f70036c3a24adba.png](https://i-blog.csdnimg.cn/blog_migrate/03bebeacc19e735e3bd331a82348285b.jpeg)
Ch07 Examples\GL Jan-Mar
删除行
导入数据的前10行都是无用的标题行,可以使用 Power Query 主页提供的「删除行」功能进行删除。
![144d886fa50a360d23fb24d47e7d873c.png](https://i-blog.csdnimg.cn/blog_migrate/b2bffe6e756e188ae0f334d592b50bdc.jpeg)
PQ提供了丰富的删除行操作,这里我们选择:删除最前面的几行 > 10 > 确定。
![9104362758fc345046e30e15d3383814.png](https://i-blog.csdnimg.cn/blog_migrate/0279e538b549c481dd8bd4ffca15b520.png)
修整和清除
现在数据看起来规整多了,但是我们仔细观察可以看到列的两边有多余的空格,同时还有一些打印字符需要将其清除。
![d9f71dd0c843f1388a0c157ba78971e0.png](https://i-blog.csdnimg.cn/blog_migrate/2e0186ba595df02c86a47419c0a3d6a0.jpeg)
选中列,在转换选项卡下,格式功能中可以找到「修整」和「清除」。
![0b0053d66ac9b9b2f0e546693b2b6e54.png](https://i-blog.csdnimg.cn/blog_migrate/c2fbe9af4e133df79c2338d4aaba75ed.jpeg)
在 Excel 中有 Trim() 及 Clean() 函数可以将前导、尾随及中间多余的空白单元格删除(字符中间仅保留一个单元格)。不同的是,PQ的「修整」功能并不能删除字符中间多余的空格。
![fc00478950ddbd4c39d7277dcfb273e2.png](https://i-blog.csdnimg.cn/blog_migrate/0d9f5945064392fa0bf43b7151e0f9ee.png)
按字符数拆分列
和 Excel 的拆分列功能相似,我们可以看到 PQ 将数据识别成了单独的一列。需要我们自己手动拆分列。
主页 > 拆分列 > 按字符数 > 15
![ec832a7b2501fff45c44be86d2cc5df3.png](https://i-blog.csdnimg.cn/blog_migrate/eb8ef74269d76a3770a926dc56f2c4a5.jpeg)
这里拆分的字符数可以根据日期列的字符数进行确定初始值,然后进行调试,找到最佳的拆分字符数。
![207acb7f214db99673d6e58c588f8fce.png](https://i-blog.csdnimg.cn/blog_migrate/cdda5682174b14303c52df9653451f2d.jpeg)
拆分完后更具规则的数据
![1f6116f6bdd9c9b3d68aa660c4615355.png](https://i-blog.csdnimg.cn/blog_migrate/004742e8930ddfe1c8e3862cb512363d.png)
提升标题
这时我们需要给每列一个有意义的名称,可以看到第一行就是列的标题。因此可以直接使用「将第一列用作标题」提升标题行。
![26761496da2e78abb4b66b68dc83e293.png](https://i-blog.csdnimg.cn/blog_migrate/eab1182d7af85532991892ab5b569e5e.png)
更改数据类型
PQ 默认会根据列的数据特征自动更改列的数据类型,然而它并不能每次都准确识别,所以有时我们需要自己更改数据类型。
![159d2245bbf7fbb032bacd811a952666.png](https://i-blog.csdnimg.cn/blog_migrate/d6074738454164b633152dc7a9b2df1b.png)
删除错误值
转换数据类型操作后,可以看到列的下方出现了红色的标记,这是 PQ 提醒我们数据列存在错误值,往下拉到第 44 行可以发现错误值。
![a012740d63d6f329a5dd71009750d522.png](https://i-blog.csdnimg.cn/blog_migrate/cd61253ffe2b0368e6cdf3b99774906a.png)
因为数据类型转换失败导致的错误值
当确认了这些属于无用字符导致的转换失败以后,可以删除错误行。
主页 > 删除行 > 删除错误
![3c282f7b84caadfe6cbe6bbe742de3ee.png](https://i-blog.csdnimg.cn/blog_migrate/35d1cc0afc5ac81ac080863a4883bc52.png)
筛选剔除行
删除错误以后,第一列还有灰色的提示,说明该列还有无用的空行。
![4fbda41a53d769a0134917ea096f9d66.png](https://i-blog.csdnimg.cn/blog_migrate/388ec538e0c8ee4fefbecb8fd6bb097f.png)
可以通过列的筛选功能,剔除空行,选中第一列,筛选取消勾选 (null)。
删除列
删除数据中的空列。选中空列,右击鼠标删除列。
![e3eaa70380b0f5a220fd4bb531b4d796.png](https://i-blog.csdnimg.cn/blog_migrate/e78f99e0be6c54293598379cb1e822a6.png)
合并列
处理到这一步数据已经基本清洗干净了。往后看,可以发现有两列在开始按字符数拆分时,被错误的拆开了。
![e35549300f3d5aa68bf05c8497b10c3b.png](https://i-blog.csdnimg.cn/blog_migrate/76c7c8dccc4bf63c497536660c4fdca4.png)
我们可以使用「合并列」功能进行逆操作,「合并列」相当于 Excel 中的连接字符 「&」。
选中以上两列,点击转换> 合并列
![f214174b8abe77781c57582d0fd22964.png](https://i-blog.csdnimg.cn/blog_migrate/7b6142514c9f740a66467d40bee165bb.png)
弹出的对话框中指定新的列名,点击确定完成合并。
![c91db39901032ae0d584fc8685904ae9.png](https://i-blog.csdnimg.cn/blog_migrate/7a0561e0de0d72c44aba74cc2c5fca3a.png)
按分隔符拆分列
合并的 Reference Information 列包含双重信息,并且可以按照分隔符「 - 」进行拆分。
选中该列,点击转换拆分列 > 按分隔符 > -
![64f181d25248cef56997c85790621ecf.gif](https://i-blog.csdnimg.cn/blog_migrate/ed52aa659f8fe4f8d1a2cc4cc9de9c12.gif)
学会以上十招,基本也就掌握了PQ 常用的数据清洗功能,只要认真跟着操作一番,相信对 PQ 会有不一样的理解,同时对于文章没有出现的其它数据转换功能也会具备一定的自我探索能力。
也许你会问这些都能在 Excel 中实现,为什么要一定要在 PQ 中处理 ?,在 Excel 中当你面临同样的需求时,所有的导入文本、删除行、合并拆分列,你都需要重新操作一遍。
而在 PQ 中,以上操作都已经被录制下来
(类似宏)
,当你面临同样需求时,只要更改数据源就可以一键执行整个清洗工作。
-END-
本文首发于爱数据讲师Jary Yuan公众号
转载请联系:Jary Yuan(ID:ExcelPlus007)
点击 阅读原文 查看精品课程~