题目:
如图,需要提取多项式中每一项中的系数,如第一行的系数为3和2,并对其求和,最终结果为5。
解法:
本题主要考察对文本信息的拆分和提取,通过多次拆分不难得到结果。
其中一个难点在于如第2行,"N150+E70"系数均为1,但拆分后得不到正确的结果,所以用try Number.F[......]
国内首个M语言分享博客
如图,需要提取多项式中每一项中的系数,如第一行的系数为3和2,并对其求和,最终结果为5。
本题主要考察对文本信息的拆分和提取,通过多次拆分不难得到结果。
其中一个难点在于如第2行,"N150+E70"系数均为1,但拆分后得不到正确的结果,所以用try Number.F[......]
在工作中我们经常会遇到很多不规范的表格,比如这样:
一个sheet里塞了很多张格式一模一样的表,但是横向排列的,非常不便于做分析,所以需要把这些表格进行合并。如果这种独立表格的数量不多我们可以手动框选区域分别插入表格,然后用PQ追加查询,但是如果表格有很多显然不现实。
[......]
根据指定URL,提取网页中所有锚链接,即href=""中引号之间的部分。
使用Text.FromBinary
和Web.Contents
的组合获取目标网页的HTML源码当作文本处理,然后使用Text.PositionOf
获取共有多少个分隔符,List.Tr[......]
在PQ中我们经常需要对数据进行展开,而这个动作通常只是需要点一下鼠标不需要我们写公式的,所以一般也不会注意到如何去简化。比如如下一组数据,对其先分组再展开,虽然得到的结果还是它。
先完全界面化操作,不作任何修改,看下系统自动生成的公式:
let 源 = Excel.Curren[......]
把[列4]第3行的数据替换为999,其他数据不变,数据源自拟。
本身并不是什么难题,单一个Table.ReplaceRows
函数就能做到,但问题是如果列数很多需要把所有的列名都写上,太长了。利用record合并后相同字段会替换前面保留最后一个值的特性,就能简[......]
将替换区的数据,挨个按顺序替换源数据,多出的补全在下面,需保持原来的顺序。
let 待替换= Excel.CurrentWorkbook(){[Name="表2"]}[Content], 源 = Excel.CurrentWorkbo[......]
左表转成右表,同一[Aircraft][Model][WheelNum]依次横向排列。
先分组,表和列之间多次转换后,展开即可。
let 源 = Excel.CurrentWorkbook(){[Name="表1"]}[Content],[......]
现有一列数据,其中"A"和"F"都不止出现了一次,需要将它们找出来。
根据表获取行的另一种方式为表{[name="A"]}
,但是这种方式仅限于字段下命名唯一,如果[name]下有两个"A"会报错,只有一个 "C"则不报错。
根据这个特性,再利用try能够[......]
在其他语言学习递归思想的时候,有一个经典的问题就是汉诺塔的解法:
当然这个在M语言中也是可以玩的,并且代码比其他任何语言都要简洁。
思路:利用递归思想,假设有n层,最上面的n-1层已经从A借助C移到B,然后将最大的盘子从A借助B移到C,最后再将n-1层从B借助A移到C,一直递归下去。M中@代[......]
在Power BI中经常需要使用到日期表,尤其是使用DAX中的时间智能函数。在excel 2016版本的Power Pivot中,我们可以使用新建日期表的功能快速创建一张日期表,但是在2013及Power BI中就没那么方便了。不过这种问题在我们如此灵活的PQ中,当然只是小case啦~
首先需要根[......]