首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

自定义M函数,个性化处理你的数据

山不让尘,川不辞盈

PowerQuery自带的M函数无法满足数据处理需求时,我们可以自定义M函数。

自定义函数的基本语法是:函数名=(参数1、参数2、参数3…)=>表达式。

创建自定义函数

如果只需要创建函数,可以省略函数名,Power Query默认以查询名称为函数名。以下是两个简单的函数示例:

括号()里面指定参数,参数至少一个,多个参数用逗号分隔。as 限定参数数据类型,as number可以省略不写,不写则输入的参数可以为任意类型。“=>”是固定组合,可以理解为带参数赋值。

将以上代码分别复制到高级编辑器中,将返回类型为函数(fx)的查询。

自定义函数

如果自定义函数包含多个步骤,在函数内部需要用到let表达式定义步骤及返回结果。以下函数包含两个步骤,用let表达式定义计算过程,用in返回最终计算结果:

自定义函数的调用

自定义函数调用与内嵌M函数调用方法一样,可以在函数中输入参数直接调用。在输入参数对话框中,初始输入数字1,结束输入数字10,单击"调用"就生成了1到10的连续数字列表。

还可以在其他查询中调用。将刚刚生成的列表转换成表,然后通过「添加列」选项卡中「调用自定义函数」功能调用自定义函数。

调用自定义函数

也可以在新建自定义列中通过函数名调用。新建自定义列调用自定义函数「加2」让全部列中的数字全部加2。

新建自定义列

M函数可以直接作为其他M函数的参数。当函数的参数只有一个时更方便,直接将函数名作为参数传递就可以了,无需参数,甚至括号也可以省略。

自定义函数同样也可以。假设我们需要让销售数据表中大于100的单价都乘以0.98,可以在查询中直接定义并调用自定义函数。

百余篇优质原创文章练习文件;

365天不限次数答疑;

持续更新的杂志级图表制作方法及源文件;

历次分享的优秀可视化仪表板模板。

…………

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20230522A01PE100?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券