21. コード補完問題
問題: "Category"列のリスト取得
CategoryList = Table.Column(Source, "___")
解答: Category
解説:
Table.Column(table, "ColumnName")
で指定列の値をリストで取得します。
22. 5択問題
問題: "列のピボット解除"を行う関数
A. Table.Pivot
B. Table.UnpivotOtherColumns
C. Table.UnpivotColumns
D. Table.Transpose
E. Table.ExpandTableColumn
解答: C. Table.UnpivotColumns もしくは B. Table.UnpivotOtherColumns
(問題が紛らわしいですが、「列のピボット解除」は"Unpivot"がキーワード。)
"列のピボット解除"は Table.UnpivotColumns
またはTable.UnpivotOtherColumns
を使用しますが、単純に"列のピボット解除"といえばCの Table.UnpivotColumns
がより直接的です。
解説:
Table.UnpivotColumns
は選択した列を行方向に展開してピボット解除します。
Table.UnpivotOtherColumns
は指定しなかった列以外をピボット解除します。
ここでは「適切なもの」としてTable.UnpivotColumns
が代表的です。
23. コード補完問題
問題: 昇順ソートを表す値
{"Date", ___}
解答: Order.Ascending
解説:
Order.Ascendingで昇順、Order.Descendingで降順を表します。
24. 5択問題
問題: DateTime.LocalNow()
が返す値
A. 現在の日付のみ
B. 現在のUTC時刻のみ
C. 現在の日付と時刻(ローカル)
D. 今日の午前0時
E. Excelシリアル値形式の日付
解答: C. 現在の日付と時刻(ローカル)
解説:
DateTime.LocalNow()
は現在のローカル日時を返します。
25. コード補完問題
問題: Price列を10%割引 ([Price]*0.9
)
Transformed = Table.TransformColumns(Source, {{"Price", each ___}})
解答: [Price] * 0.9
解説:
each [Price] * 0.9
でPrice列の値を10%引きした値に変換します。
26. 5択問題
問題: Table.ToList
はどう変換するか?
A. テーブルを縦方向に連結したリスト
B. テーブルのすべての列を連結したリスト
C. 単一列テーブルをリストに変換
D. テーブルをキーと値のペアのリスト
E. テーブルを階層構造のリストに
解答: C. 単一列テーブルをリストに変換
解説:
Table.ToList(table)
はテーブルが1列である場合、その列をリストに変換します。
27. コード補完問題
問題: "FullName"列 = FirstName + " " + LastName
[FirstName] & " " & [___]
解答: LastName
解説:
文字列連結で &
を使い、[FirstName]と[LastName]を連結します。
28. 5択問題
問題: 条件分岐構造は?
A. select ... case
B. if ... then ... else
C. switch ... case
D. when ... do
E. choose ... option
解答: B. if ... then ... else
解説:
M言語で条件分岐はif 条件 then 値 else 値
です。
29. コード補完問題
問題: Number.Roundを使う
each Number.___([Score],0)
解答: Round
解説:
Number.Round(number, digits)
は値を指定桁数で四捨五入します。
30. 5択問題
問題: 日付部分を抽出するための関数
A. Time.Day
B. Date.MonthName
C. Date.Day
D. Duration.Days
E. DateTime.Year
解答: C. Date.Day
解説:
Date.Day(date)
で日付から日の部分を抽出します。