論文一覧に戻る 📚 用語集トップ 🗺 概念マップ
📚 用語解説
📚 用語解説
Power Query
Power Query
ライブラリ

🔖 キーワード索引

ExcelPower BIM言語データ取得クエリエディタ結合アンピボットクレンジングETLリフレッシュ

別名・略称:(なし)

💡 30秒で分かる結論

Power Query(Power Query):Excel/Power BI のデータ取得・変換機能

📍 あなたが今見ているもの

Excel で 「毎月のレポートを手作業で 30 分かけて作っている」 状況を、 クエリで記録 → ボタン 1 つで再生 に変えるのが Power Query です。 Microsoft 製品(Excel 2016+、 Power BI、 SQL Server Integration Services)全てに組み込まれています。 pandas のコードを書くほどでもない、 でも Excel の手作業を脱したい人向けの中間解。

🎨 直感で掴む

Power Query の典型作業

  1. 取得:CSV / Excel / DB / Web からデータを読み込み
  2. 整形:列名変更、 型変換、 欠損補完、 不要列削除
  3. 結合:複数テーブルを「結合」「マージ」
  4. 変換:ピボット解除、 グループ集計、 派生列
  5. 読み込み:シート、 データモデル、 Power BI へ
  6. リフレッシュ:データソース更新時にボタン 1 つで全自動

M 言語の例

1
2
3
4
5
6
7
let
    Source = Csv.Document(File.Contents("data.csv"), [Encoding=65001]),
    Header = Table.PromoteHeaders(Source),
    TypeChange = Table.TransformColumnTypes(Header, {{"消費支出", Int64.Type}}),
    Filtered = Table.SelectRows(TypeChange, each [] >= 2020)
in
    Filtered

📐 定義 / 数式

Power Query は数式というより手順記述。 M言語の文法に従ったクエリが let ... in ... で書かれます。

【M 言語の基本構造】
let
  step1 = ソース取得,
  step2 = step1 を変換,
  step3 = step2 をフィルタ
in
  step3  // 最終結果

🔬 記号・式を言葉で読み解く

クエリ
Power Query が実行する一連の変換ステップの集合。 GUI で記述可能。
ステップ
1 つ 1 つの変換操作。 「列の削除」「型の変更」など。 後から編集可能。
M 言語
Power Query の内部言語。 GUI 操作が自動で M に変換。
データモデル
クエリで読み込んだテーブル群と関係性。 Power BI / Excel データモデルへ。
リフレッシュ
クエリを再実行してデータを最新化する操作。

🧮 実データで計算してみる

毎月の SSDSE データ更新を Power Query で自動化する例:

  1. 新しい SSDSE-B-202X.csv をダウンロード
  2. Excel で「データ → クエリの編集」
  3. ソースのファイル名を切り替え(or 同じ名前で上書き)
  4. 「すべて更新」ボタン
  5. 過去に作ったレポート(ピボット、 グラフ)が全自動で更新される

手作業 30 分 → ボタン 1 つに短縮。

🐍 Python 実装

SSDSE-B-2026(47 都道府県・2023 年データ)を題材にした最小コード:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
# Power Query 自体は Excel/Power BI の機能ですが、 同じことを pandas で書くと:
import pandas as pd

df = pd.read_csv('data/raw/SSDSE-B-2026.csv', encoding='utf-8', skiprows=1)

# 型変換 + フィルタ
df['消費支出'] = df['消費支出'].astype(int)
df = df[df['年'] >= 2020]

# 別データと結合
ref = pd.read_csv('data/raw/prefecture_codes.csv')
df = df.merge(ref, on='都道府県', how='left')

⚠️ よくある落とし穴

⚠️ ファイルパス絶対指定で配布できない
他端末では「ファイルが見つかりません」。 → 相対パスや組織共有先に。
⚠️ リフレッシュ時の認証情報
DB やクラウドソースは認証が必要。 → 組織アカウントで保存。
⚠️ M 言語の関数大文字小文字
M 言語は 大文字小文字を区別。 例:each [年] > 2020
⚠️ 巨大データのパフォーマンス
Power Query は数千万行で重い。 → SQL でフィルタしてから取り込む。
⚠️ クエリの依存関係
クエリ A が クエリ B を参照していると、 A の修正で B が壊れる。

🌐 関連手法・この用語を使う論文

📄 Excel で前処理する論文
BI ベースの分析では Power Query が前処理基盤になります。