小勤:这个网站的数据怎么抓?我用Power Query试了一下,抓不下来…… 网址:http://www.zjzwfw.gov.cn/zjzw/punish/frontpunish/showadmin
Power Query 是微软提供的工具,Excel 2013 版作为插件加载使用,从 Office 2016 版开始,Power Query 的功能集成到 Excel 中,可以直接使用。微软推出 Power BI Desktop 后,一系列的工具,比如 Power Query, Power Pivot, Power View 等,都集成在其中。Power Query 定位查询,中文一般翻译为超级查询,主要作用是连接不同种类的数据源,进行数据的转换。下图来自微软官方对 Power Query 的介绍,可以帮助理解。Power Query 主要实现连接和转换功能。
前段时间,有朋友在群里问,Power Query最难的函数是什么?有的说是List.Accumulate,有的说是List.Generate……
也就是说,“得益于”pq强大的引擎,Text.NewGuid()只运行了一次,的确非常节省算力。
在Power Query里,怎么能按需要给某个表添加一些行?比如在每个科目后面加3个空行:
数据专业人员经常做的工作之一是将多个数据集追加到一起。无论这些数据集是包含在一个 Excel 工作簿中,还是分布在多个文件中,问题是它们需要被纵向【追加】到一个表中。
前些天,在群里有朋友提到问题:在Power Query里,怎么能按需要给某个表添加一些行?比如在每个科目后面加3个空行:
其实上周的这个方案还有很多种做法,关于一题多解,先把这个完成的流程做完再开新的支线吧~
文章背景:在使用文件夹的方式批量导入多份Excel文件时,由于Excel文件中存在隐藏的筛选行,所以导致数据重复录入,后来看了赵文超老师的一篇文章(见文末的参考资料1),对这一问题有了新的认识。
其实我们仔细看一下场景1和场景2,它们之间是个逆过程,场景1是从Python获取数据传递到Power BI,而场景2是Power BI或者Power Query获取了数据,用python来处理。
我们工作中可能会遇到类似这样的电子表格:最前面几行表明该表的关键信息,例如这份虚拟的电子装箱单有收货方、地址、预计到货日期等等;表头下方是明细内容,本次发货有几箱,每箱装了什么产品,产品数量多少(每箱重量信息也应该包含,此处省略)。
导语:Power Query 是可证明的,在这个星球上性价比最高的数据处理工具,如果你的工作中需要处理数据,注意,是处理,不是分析,那么此工具必须掌握。对此,90%的鼠标点击,5%的猜测以及5%的公式能力足以。本文来自《Master Your Data》的第十章,非常重要,必须掌握。
我们在使用图片识别文字时常常会出现识别出来的文字是这样的,如果识别出来是这样的东西,它们的数据图片中是4列的,识别变成文字后是一列的:
合并来自多个文件数据的传统方法是极其繁琐和容易出错的。每个文件都需要经历导入、转换、复制和粘贴的过程。根据转换数据量的大小和复杂程度、文件的数量以及解决方案运行的时长,这些问题可能形成可怕的积累效应。
合并多表数据是常见的数据处理工作之一。无论大小公司,难免会遇到需要手工收集一些数据信息,可能是临时性的,也可能IT系统没有架设好的缘故。手工报表的最大特点是:存在一定的不规范性,给整合带来困难。
大海:这个得看这个网站的数据查询反馈机制,有的比较简单,有的可能加了很多安全机制,那样就比较复杂。
小勤:大海,你上次说PowerQuery可以批量导入Excel文件,我参考你那个批量导入文本文件的方法试了一下,不行啊。
做数据处理的时候,会经常遇到在当前行读取上一行数据的问题,在Excel里,可以直接通过单元格的相对引用来实现。
分析师面临的普遍问题是,无论从哪里获得数据,大部分情况都是一种不能立即使用的状态。因此,不仅需要时间把数据加载到文件中,还得花更多的时间来清洗它,改变它的结构,以便后续做分析的时候能更好的使用这个数据。
这里,显然是因为将合并工作表和数据源放在了同一个文件夹下,所以Power Query将合并工作表也显示了出来,并且,还有一个前面带“~$”的合并工作表,是因为合并工作表当前打开状态,生成了一个临时文件。所以在后续编辑查询的时候我们首先要把合并工作表的内容过滤掉,否则以后刷新数据时会连合并工作表的数据一起导入。
> 经常听别人说 Python 在数据领域有多厉害,结果学了很长时间,连数据处理都麻烦得要死。后来才发现,原来不是 Python 数据处理厉害,而是他有数据分析神器—— pandas
我们在日常工作中不可避免的会遇到按条件查询数据的情况。如果是单条件查询,我们通常会使用VLOOKUP函数解决;当遇上两个或多个条件查询时,我们还继续使用函数,则效率会有所降低。
毫无疑问,对于开始就以表格形式处理数据的人来说,最简单的方法之一是打开 Excel 并开始在工作表中记录数据。虽然 Excel 并不是真正打算充当数据库的角色,但这正是实际发生的事情,因此 Power Query 将 Excel 文件和数据视为有效数据源。
在网抓的过程中,经常会碰到抓回来的数据格式很多都是记录,列表格式,这类格式的数据。
在Excel中,将数据存储在表中为数据处理提供了极大的方便。表有一些基本的结构规则,例如表的标题必须是唯一的,只允许一个标题行,这使得表与更复杂的工具能够兼容,例如,Power Query、数据透视表和SharePoint使用表作为数据源或输出方式。
需要进行表格的合并,通常来说需要把标题给统一,这样直接通过Table.Combine函数即可进行表格数据的合并。
Power Query提供了大量数据连接器。 这些连接器从 TXT、CSV 和Excel文件等数据源到Microsoft SQL Server等数据库,以及 Microsoft Dynamics 365 和 Salesforce 等常用 SaaS 服务。 如果未在 “获取数据 ”窗口中看到数据源,则始终可以使用 ODBC 或 OLEDB 连接器连接到数据源。
Power Query 的设计目的就是在业务分析师使用数据之前将数据加载到目标区域的表中。收集数据并将其重塑为所需的格式,Power Query 处理数据的基本流程,如图 1-1 所示。
忽略指定过滤器后进行计算。 之前这个使用All函数生成忽略学科教师平均分的度量值,如果用AllExpect函数则可以写成
VLookup无疑是Excel中进行数据匹配查询用得最广泛的函数,但是,随着企业数据量的不断增加,分析需求越来越复杂,越来越多的朋友明显感觉到VLookup函数在进行批量性的数据匹配过程中出现的卡顿问题也越来越严重。
问题:需要整理一个有数千条数据的列表,Excel可以很方便地搜索并显示需要的条目,然而,想把经过提炼的结果列表移到一个新的电子表格中,不知道有什么好方法?
Power BI 模型的真正强大之处在于通过使用 DAX 语言进行计算。虽然许多 Power BI 用户专注于模型并试着完全避开使用 DAX,但是除了最简单的基础聚合运算以外,其他所有的计算都需要通过 DAX 来实现。而且,你迟早会在 Power BI 中遇到更复杂的计算需求。根据我们的经验,典型的情况会是:你精心制作的一个 Power BI 报告初稿,会引出有关这些数据的越来越多、越来越复杂的问题。
Power Query (本文和以后也用 PQ 作为 Power Query 的缩写) 数据处理的起点是获取数据,在我所接触过的数据处理工具中,PQ 能处理的数据源种类算是比较多的,比如基于文件、基于数据库、基于在线服务等等。一般来说,工作中不可能同时接触所有类型的数据,也没有必要对所有数据源全部掌握。我们可以挑一些常用的和典型的数据源去学习,然后举一反三,不知道细节的时候,查看微软的帮助文档。
本章专门讨论 Power Query 新手会面临的两个常见问题:理解 Power Query 是基于数据类型(而不是数据格式)的工具,以及如何理解和处理 Power Query 查询中的错误。
本文通过Excel的新功能Power Query结合数据有效性功能,实现最简单实用的去掉重复数据并在表格中下拉显示的效果。
在Power BI设置画布背景或者图表背景时,可以手动输入颜色代码,输入的方式有两种,HEX(十六进制)或者RGB(红绿蓝)。
要对一行内容进行判断,首先得取得这一行的内容,我们知道,在Power Query里,可以通过下划线(_)直接得到当前行的内容(可以参考文章:重要!很重要!非常重要!理解PQ里的数据结构或看免费系列视频: 不理解PQ的数据结构,再怎么努力也学不好M函数!),如下图所示:
语法 for {%variable|%%variable} in (set) do command [ CommandLineOptions]
在本公众号的第4篇推文里,我们向大家分享过Power BI进行时间序列预测的几种方法。其中提到,Power BI的折线图自带有预测功能。当时简单地以为PBI使用移动平均方法。最近查阅官方文档发现,Power View的预测功能用的是指数平滑法(Exponential Smoothing),同时按是否季节性做了区分。PBI跟Power View一脉相承,可以推测应该也是沿用指数平滑法。
小勤:我有一批从某个系统导出来的表,主体数据表格式完全一样,但标题行在第2行(第1行通常是空的),为什么通过Power Query合并时,有的会忽略掉第1行空行,有的又不会忽略掉?
导语:花10%的时间,熟练掌握Power Query的基础操作,解决80%的问题,再或10%的时间,掌握一些儿基础的M函数,再解决15%的问题,剩下的5%,需要的时候问人吧。
关于用Power Query汇总Excel数据文件,我前期用了多个案例录制了多个视频进行讲解,做成了一个免费的Excel数据汇总系列特辑:
标准Excel表格批量汇总过程及基础方法请参考文章:《批量汇总Excel工作簿多表数据,结合CELL函数实现动态化数据源及需要注意的Formula.Firewall问题》,所有特殊情况处理都是在该基础方法之上加以适当的处理而已。
各位使用Power BI的小伙伴有很多是从事项目管理相关工作的,咱们的Power BI除了可以基于数据对现状展示以外,还可以对不同项目以及各个阶段工作量进行宏观展示。今天我们就来扒一扒如何利用Power BI做出项目Roadmap以及对项目一目了然的甘特图。
函数是 Power Query (PQ) 解决问题的核心。之前的博客文章我多层刻意在完成查询的步骤之后显示高级编辑器中 M 语言代码,想必大家已经对 M 的函数有了初步印象,尽管不一定很关注。本篇介绍 M 函数比较重要的知识点。
领取专属 10元无门槛券
手把手带您无忧上云