Power BI Desktop 5月更新来了,在网抓方面增加了一个新功能———使用示例提取表。
使用前需在设置-预览功能中,勾选"新的通过Web体验"。
该功能类似于智能填充以及添加示例中的列,允许用户手动输入目标数据,并根据输入内容智能分析转换规则,获取到网页中具有同样样式的其他数据。[......]
分类: M套路108式
筛选异常值
题目:
要求从一堆零件中找出存在异常的零件。
比如第7行的27明显比其他值小很多,而第10行的3792明显比其他值大很多,都属于异常值。
解法:
要找出异常值,首先得定义异常的条件,异常到什么程度才能算作"异常"?
根据百度百科词条,在统计学中通常把与样本平均值相差2个标准差以上的[......]
模拟绝对引用累计计数
题目:
对A列数据计算出现的次数,在工作表函数中可以使用绝对引用固定住A2实现,=COUNTIF(A$2:A2,A2)
。
在Power Query中实现类似的效果思路还是蛮多的,我们使用不同的方法并模拟了一万行的数据量来对比测试下效率。
最优解:
let 源 = Exc[......]
读取Word文档中的表格
发票号展开
题目:
将简写的发票号展开,如下图:
解法:
先直接上代码:
let 源 = Excel.CurrentWorkbook(){[Name="发票号"]}[Content], 构建list = Table.AddColumn(源, "展开", each [[......]
套装组合问题
题目:
现有一张订单明细表,包含下单时间、订单编号以及商品SKU码,一笔订单可能会购买多件商品,所以一个订单编号对应一个或多个SKU码。
以及一张套装组合表,共有5种套装,每个套装包含若干个商品SKU。
若某笔订单下的商品能够构成套装,则认为该订单是卖出套装而产生。
要求每种套装卖出多少[......]
VBA自动刷新
我用Power Query调用图灵机器人api做了一个机器人,很有意思,大家可以先下载附件体验下。
只要输入问题,机器人便会回答你,像小黄鸡一样。
至于怎么做的先不管,这不是本文的主题。但在使用的过程中很容易发现一个不太方便的地方:每输入一次问题,需要手动点击刷新才能看到机器人的回复,而不会[......]
M与Python交互
在某些方面强大的同时,在其他方面必然存在一些不足,任何语言都不例外。
比如进行大位数运算,在Excel和Power Query中的数字都有位数限制,100的阶乘,是一个很大的数字了,直接算的话就会变成科学记数法,得不到精确的结果。
而在Python中是没有这个限制的,所以Power Quer[......]
不解压直接读取zip压缩包
我们知道Power Query能够连接很多不同格式的数据源,但同时还有很多是不能直接支持的,比如word文档、压缩包等等。
有这样一种场景:源数据来自于网络或者远程服务器,每天更新,文件格式是zip,压缩包内有csv。
如果不能直接读取zip,那么我们需要每天把zip下载下来,解压后再导入Pow[......]
分段频次分布统计
题目:
即分箱问题,每10岁划分为一个年龄段,统计各分段的人数。
解法1:
看到题目第一反应可能就想到分组,但是表里原来没有分组的依据列,所以只需要添加一个年龄段的列,再根据这一列分组就可以了。分组完顺序是乱的,最后再加个排序。
let 源 = Excel.Curren[......]