Power Query M言語のクロージャは再帰的に実行できますか?電力クエリクロージャと再帰;これに関する教科書?
関数は再帰的に実行できます。関数名クエリフィボナッチの名前は、
(X) =>
let
Fib = if X <= 1 then 1 else X + Fibonacci(X - 1)
in
Fib
となります。私がしようとすると、単一のクエリ内に立つときしかし、それは失う:
let
Fib = (X)=> if X <= 1 then 1 else X + Fib(X - 1),
Source = Table.FromRecords({[X=1],[X=2],[X=3],[X=5]}),
UseIntFib = Table.AddColumn(Source, "Fib", each Fib([X]))
in
UseIntFib
結果のテーブルがエラーというメッセージされている「のFib見つからない、インポートすることを忘れなかったと
1 1
2 Error
3 Error
5 Error
ですモジュール? '
他の方法がありますか?あるいは、再帰関数が必要な場合は、それ自身のクエリとして立てなければなりませんか?
メタはを照会 - Mでは、
Fib = (X)=> if X <= 1 then 1 else X + Fib(X - 1)
などのローカルに定義された関数は閉鎖、またはラムダ式と呼ばれる、または何ですか?私は使用されているのを見たことがありますが、聞いたことがありませんという名前のです。だから私はそれらについての投稿を検索する方法がわからない。
パワークエリークロージャについて私に教える良い教科書やオンラインソースはありますか?私のgo-toテキストMは(データ)Monkeyのためのもので、ほとんど何も言われていません。大抵、私はたくさんの例が好きです。私は/ 各
- 方法を知りたい - 使用内をしましょうとしましょう。
- あなたは再帰関数を呼び出すしたい場合は、いわゆる「スコープ演算子」として@を追加する必要があるので、このコードはOKです(私はちょうどあなたの「のFib」に@を追加、彼らに
以前の質問に対する私の答えに親切にお答えいただける方は、https://stackoverflow.com/questions/45623765/excel-power-query-using-list-matchany-on-a-column-value 私はこの新しい質問に反応することを検討します。 – MarcelBeug
完了し、ありがとうございます。私はまだStackOverflowの周りに自分の道を学んでいます。申し訳ありませんが、私は速やかに反応しませんでした。 –