数据可视化之powerBI入门(八)PowerQuery学习:认识M函数
https://zhuanlan.zhihu.com/p/64148928
前面我们学习PQ的时候都是用鼠标操作,虽然通过这些操作能完成大部分的数据处理,但是毕竟还有些复杂的工作是处理不了的,如果想彻底驾驭PQ,必须得掌握点高级玩法。就像学习Excel一样,做个表格我们只要会简单的操作就可以了,但要想学好Excel,必须会点公式、VBA是一样的道理,PQ的高级技能也是需要写公式函数的,在PQ中用的函数称之为M函数。
在之前的PQ操作中,其实M函数无处不在,比如做数据清洗的每一个步骤,背后都有M函数的影子。打开高级编辑器,可以看到所有这些步骤的M语言。
如果我们不进行鼠标操作,直接在编辑器中编写这些语言,也是可以得到最终的结果的,有了M函数,PQ的数据处理具有很强的可读性和可移植性。
01 | 为什么要学习M函数
- 有些复杂的操作必须借助M函数
- M函数更加灵活,简洁高效
02 | M函数基本规范
- M函数对大小写敏感,每一个字母必须按函数规范书写,第一个字母都是大写
- 表被称为Table,每行的内容是一个Record,每列的内容是一个List
- 行标用大括号{ },比如取第一行的内容:=表{0} //PQ的第一行从0开始
- 列标用中括号[ ],比如取自定义列的内容:=表[自定义]
- 取第一行自定义列的内容:=表{0}[自定义]
03 | 常用的M函数
- 聚合函数:
求和:List.Sum()
求最小值:List.Min()
求最大值:List.Max()
求平均值:List.Average()
- 文本函数:
求文本长度:Text.Length()
去文本空格:Text.Trim()
取前n个字符:Text.Start(文本,n)
取后n个字符:Text.End(文本,n)
- 提取数据函数:
从Excel表中提取数据:Excel.Workbook()
从Csv/Txt中提取数据:Csv.Document()
- 条件函数:
if else then (相当于Excel中的IF)
04 | 从哪里查找M函数
新建一个空查询,在公式标记栏中输入=#shared,就把所有的M函数显示出来了,点击某个函数,最下方便出现该函数的注释:
05 | 学习建议
虽然M函数很强大,但是不建议一头扎进去学习她,毕竟对于一个之前没有接触过编程的人来说,学习成本还是挺高的,并且大部分函数并不常用。
我的建议是先能够读懂M语言,并把常用的函数,比如文本函数、字符串函数、日期函数等浏览一遍,知道大概都有什么函数,分别是哪些功能,然后在数据处理过程中碰到鼠标操作难以完成的问题,能想到有哪个M函数可以利用,直接查找和并根据注释使用、或者会修改相应的M函数即可。
如果熟练使用鼠标操作功能,又能灵活运用M函数,你将在数据处理的路上一骑绝尘、所向披靡。在大数据已经进入日常工作和生活的今天,拥有Power Query这个利器, 我们就能用最少的时间来处理数据,留下更多的时间去分析数据,去发现数据背后的规律,这才是我们学习PQ、学习PowerBI的最终目标。
数据可视化之powerBI入门(八)PowerQuery学习:认识M函数的更多相关文章
- 数据可视化之powerBI入门(四)Power BI与PowerQuery、PowerPivot有什么关系
https://zhuanlan.zhihu.com/p/64146209 Power BI与PowerQuery.PowerPivot有什么关系? 刚开始学习PowerBI的时候,总是能碰到Powe ...
- 数据可视化之powerBI入门 (一)认识PowerBI
来自 https://zhuanlan.zhihu.com/p/64144024 Power BI是什么? Power BI是微软推出的数据分析和可视化工具,我们先来看看微软官方是怎么介绍的: Po ...
- 数据可视化之powerBI入门(十二)PowerBI中最重要的函数:CALCULATE
https://zhuanlan.zhihu.com/p/64382849 介绍DAX的时候,特别强调过一个重要的函数:CALCULATE,本文就来揭秘这个函数的计算原理以及它是如何影响上下文的. C ...
- 数据可视化之powerBI入门(三)财务人员必学,使用Powerquery是一种什么体验?
https://zhuanlan.zhihu.com/p/54700574 财务人员必学,使用Powerquery是一种什么体验? 你和Excel高手的距离只差了一个Power Query!!! 先思 ...
- 数据可视化之powerBI入门(五)PowerQuery,支持从多种源导入数据
PowerBI的强大绝不仅是最后生成炫酷的可视化报告,她在第一步数据获取上就显示出了强大的威力,利用Power Query 的强大数据处理功能,几乎可以从任何来源.任何结构.任何形式上获取数据 htt ...
- 数据可视化之powerBI入门(六)PowerQuery:横向/纵向追加数据
https://zhuanlan.zhihu.com/p/64148432 上一篇文章都是在原表数据基础上的分分合合,但做数据分析的时候还经常需要在原有数据的基础上增加一些辅助数据,比如加入新列.新行 ...
- 数据可视化之powerBI入门(十)认识Power BI的核心概念:度量值
https://zhuanlan.zhihu.com/p/64150720 本文学习PowerBI最重要的概念:度量值 初学Power BI一般都会对度量值比较困惑,毕竟对长期接触Excel的人来说, ...
- 数据可视化之powerBI入门(九)PowerBI数据建模:其实一点都不高深
https://zhuanlan.zhihu.com/p/64149834 数据建模并没有那么高深,你同样可以学会!这篇文章通过一个实例创建一个简单的数据建模,并引出两个重要的概念:度量值和DAX. ...
- 数据可视化之powerBI入门(二)体验PowerBI:零基础分分钟生成一份交互报表
https://zhuanlan.zhihu.com/p/64144595 体验PowerBI:零基础分分钟生成一份交互报表 首先我们准备一份数据,Excel格式 数据是从2006年到2015年10年 ...
随机推荐
- Nice Jquery Validator 方法
.validator() .validator( options ) 描述:根据参数初始化验证,验证 jQuery 选中的表单 参数:{Object} options - 可选,参考配置选项 示例: ...
- 【Navicat】Navicat for MongoDBv15.0.6破解版(附破解教程)
安装包下载链接:https://download.csdn.net/download/l1028386804/12519681 Navicat for MongoDB 15是一款功能十分强大的数据库管 ...
- Hadoop + Hive + HBase + Kylin伪分布式安装
问题导读 1. Centos7如何安装配置? 2. linux网络配置如何进行? 3. linux环境下java 如何安装? 4. linux环境下SSH免密码登录如何配置? 5. linux环境下H ...
- (八)postman请求的form-data、x-www-form-urlencoded、raw、binary的区别
原文链接:https://blog.csdn.net/jiadajing267/article/details/87883725 1.form-data 等价于http请求中的multipart/fo ...
- spring Cloud网关之Spring Cloud Gateway
Spring Cloud Gateway是什么?(官网地址:https://cloud.spring.io/spring-cloud-gateway/reference/html/) Spring C ...
- JavaSE之流程控制结构
流程控制语句结构 一.顺序结构 public static void main(String[] args){ //顺序执行,根据编写的顺序,从上到下运行 System.out.pri ...
- Mac App 破解之路八 病毒程序分析
本人使用MacBooster 7 扫出了几个未知程序. JMJ56 这个程序. 在finder中打开发现是一个shell脚本 调用了python 9NKb0 就是python脚本使用. 只不过是 ...
- S7-200 PLC内部+5VDC电源的负载能力
S7-200 PLC内部+5VDC电源的负载能力 S7-200 CPU模块提供DC5V和24V电源:当有扩展模块时,CPU通过I/O总线为其提供5V电源,所有扩展模块的SV电源消耗之和不能超过该CPU ...
- 【Flutter实战】六大布局组件及半圆菜单案例
老孟导读:Flutter中布局组件有水平 / 垂直布局组件( Row 和 Column ).叠加布局组件( Stack 和 IndexedStack ).流式布局组件( Wrap )和 自定义布局组件 ...
- <前端 js 实现 代码雨 >
前端 js 实现 代码雨: <!DOCTYPE html> <html lang="en"> <head> <meta charset= ...