tft每日頭條

 > 生活

 > powerquery的m函數是什麼

powerquery的m函數是什麼

生活 更新时间:2024-11-25 08:52:45

Power Query中自定義函數大緻分成三類:

  • 過程中函數:數據處理過程中定義的函數,非獨立函數,沒有let in過程
  • 獨立函數:單獨定義的函數,有let in過程
  • 由過程創建的函數:有處理的過程創建函數,通常有兩套的let In過程
過程中函數:

在循環、叠代、遞歸處理中,經常會見到這樣的函數,直接用()=>來定義的函數:

powerquery的m函數是什麼(Query三種自定義函數的類型介紹)1

這樣一個循環結構中,(x)=>x 1就是一個自定義函數。

powerquery的m函數是什麼(Query三種自定義函數的類型介紹)2

雙重循環中的:(x)=>{1..3},(x,y)=>x*y都是自定義函數。

這樣的過程中自定義函數的參數傳遞,依賴于M函數的要求,參數的數量及位置已經被外層的M函數限定。

獨立函數:

直接通過高級編輯器編寫的結構完整的函數,可以被其他查詢引用的函數:

powerquery的m函數是什麼(Query三種自定義函數的類型介紹)3

我們定義了兩個函數,一個單個參數的,一個兩個參數的:

powerquery的m函數是什麼(Query三種自定義函數的類型介紹)4

我們來引用單個參數的函數:

powerquery的m函數是什麼(Query三種自定義函數的類型介紹)5

又或者:

powerquery的m函數是什麼(Query三種自定義函數的類型介紹)6

都是一樣的結果。

兩個參數的函數引用:

powerquery的m函數是什麼(Query三種自定義函數的類型介紹)7

除了這樣用List.Transform引用,也可以直接引用,就輸出單個結果:

powerquery的m函數是什麼(Query三種自定義函數的類型介紹)8

得到結果16。這是獨立函數,可以被其他查詢引用的結構完整的函數。

由過程創建的函數:

這是在一系列的操作過程結束後,如果這個過程有很強的通用性,可以做成一個獨立函數來處理其他數據,那麼就可以由這個處理過程來創建一個函數,最常見的是多文件合并的那個自定義函數。

我們由查詢4來創建一個函數:

查詢4是一個引用了雙參數函數的一個查詢過程,在這個查詢過程右鍵點擊創建函數:

powerquery的m函數是什麼(Query三種自定義函數的類型介紹)9

進到高級編輯器中來添加我們的參數:

powerquery的m函數是什麼(Query三種自定義函數的類型介紹)10

那麼這個函數的功能是修改雙重循環的外層循環的起始值:

我們輸入9,就得到最後三行結果:

powerquery的m函數是什麼(Query三種自定義函數的類型介紹)11

我們輸入7,就得到{7,8,9}*{1,2,3}:

powerquery的m函數是什麼(Query三種自定義函數的類型介紹)12

這就是一個由過程創建的函數。

powerquery的m函數是什麼(Query三種自定義函數的類型介紹)13

這樣的函數會有兩套的let in 過程,甚至更多。

以上就是Power Query中自定義函數相關的内容,在Power Query中很多問題都可以通過自定義函數的方式解決,比如網絡抓取過程,我們可以定義多個自定義函數,抓網址、抓頁碼、抓内容,然後通過互相引用,得到我們想要的結果。

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved