Excelのパワークエリを使ってデータ分析を効率化する方法を探していますか?この記事では、条件別集計や複数条件を使ったif文、さらにパラメータとカスタム列の活用による高度なテクニックを分かりやすく解説します。これらの知識を身につけることで、あなたのデータ分析スキルが飛躍的に向上するでしょう。
固定値を使った条件判断
固定値を使った条件判断の方法を学習します。方法は、画面上で入力していく方法と条件式を入力する方法の二通りがあります。両方使えるようにしておく方が応用が効きます。
説明で利用するExcelファイルをダウンロードして実際に操作をしてみましょう。
シナリオ
氏名と身長の二列のシンプルなサンプルデータを用意しました。170以上の場合に合格でそれ以外は不合格といった列を追加したいと思います。
画面上から条件を指定する方法
パワークエリエディタを開きます。
- テーブル内のセルを選択して[データ]タブを選択します。
- [テーブルまたは範囲から]を選択します。
- [列の追加]タブを選択します。
- [条件列]を選択します。
シナリオ通りに条件を入力していきます。
シナリオ
170以上の場合に合格でそれ以外は不合格といった列を追加
- [新しい列名]に追加となる列名を入力します。
- [列名]で[身長]列を選択します。
- [演算子]は[次の値以上]を選択します。
- [値]は[170]と固定値を入力します。
- [出力]は[合格]と入力します。
- [それ以外の場合]は[不合格]と入力します。
結果を確認すると170以上で合格、それ以外は不合格と表示される新しい列が追加されました。
プログラムでは、if else 文が使われています。
= Table.AddColumn(追加された条件列, "合否判定(カスタム列)", each if [身長] >= 170 then "合格" else "不合格")
カスタム列の追加で条件式を入力する方法
パワークエリエディタを開きます。
- テーブル内のセルを選択して[データ]タブを選択します。
- [テーブルまたは範囲から]を選択します。
- [列の追加]タブを選択します。
- [カスタム列]を選択します。
シナリオ通りに条件式を入力します。
シナリオ
170以上の場合に合格でそれ以外は不合格といった列を追加
- [新しい列名]に追加となる列名を入力します。
- [カスタム列の式]に以下の条件式を入力します。
= if [身長] >= 170 then "合格" else "不合格"
結果を確認すると170以上で合格、それ以外は不合格と表示される新しい列が追加されました。
列の値を使った条件判断
続いて列同士の値で条件判断する方法を学習します。方法は、画面上で入力していく方法と条件式を入力する方法の二通りがあります。両方使えるようにしておく方が応用が効きます。
説明で利用するExcelファイルをダウンロードして実際に操作をしてみましょう。
シナリオ
氏名と実績と予定の3列のシンプルなサンプルデータを用意しました。実績と予定の列の値同士を比較して[実績≧予定]となっていれば達成でそれ以外は未達成と表示する列を追加します。
画面上から条件を指定する方法
パワークエリエディタを開きます。
- テーブル内のセルを選択して[データ]タブを選択します。
- [テーブルまたは範囲から]を選択します。
- [列の追加]タブを選択します。
- [条件列]を選択します。
シナリオ通りに条件を入力していきます。
シナリオ
実績と予定の列の値同士を比較して[実績≧予定]となっていれば達成でそれ以外は未達成と表示する列を追加
- [新しい列名]に追加となる列名を入力します。
- [列名]で[実績]列を選択します。
- [演算子]は[次の値以上]を選択します。
- [値]は下図のようにアイコンを[列の選択]に変更して、[予定]列を選択します。
- [出力]は[達成]と入力します。
- [それ以外の場合]は[未達成]と入力します。
結果を確認するとシナリオ通りの結果となっていました。
プログラムでは、if else 文が使われています。
= Table.AddColumn(変更された型, "結果", each if [実績] >= [予定] then "達成" else "未達成")
カスタム列の追加で条件式を入力する方法
パワークエリエディタを開きます。
- テーブル内のセルを選択して[データ]タブを選択します。
- [テーブルまたは範囲から]を選択します。
- [列の追加]タブを選択します。
- [カスタム列]を選択します。
シナリオ通りに条件式を入力します。
シナリオ
実績と予定の列の値同士を比較して[実績≧予定]となっていれば達成でそれ以外は未達成と表示する列を追加
- [新しい列名]に追加となる列名を入力します。
- [カスタム列の式]に以下の条件式を入力します。
= if [実績] >= [予定] then "達成" else "未達成"
結果を確認するとシナリオ通りの結果となっていました。
パラメータ値を使った条件判断
固定値をパラメータとして定義して利用する方法を学習します。パラメータを利用すると複数のクエリで共有できるので複雑な連携が発生してくると有効になります。単一のクエリであっても普段から利用しておくことをお勧めします。
説明で利用するExcelファイルをダウンロードして実際に操作をしてみましょう。
シナリオ
氏名と身長の二列のシンプルなサンプルデータを用意しました。170以上の場合に合格でそれ以外は不合格といった列を追加したいと思います。
画面上から条件を指定する方法
パワークエリエディタを開きます。
- テーブル内のセルを選択して[データ]タブを選択します。
- [テーブルまたは範囲から]を選択します。
パラメーターを登録します。シナリオの条件で利用する170をパラメーターとして登録します。
- [ホーム]タブの[パラメーターの管理]を選択します。
- [新しいパラメーター]を選択します。
- [名前]にパラメーター名称を入力します。分かり易いようにしておくと良いでしょう。
- [説明]に後で何のパラメーターなのか分かるように説明を入れておきます。
- [列の追加]タブを選択します。
- [条件列]を選択します。
シナリオ通りに条件を入力していきます。
シナリオ
170以上の場合に合格でそれ以外は不合格といった列を追加
- [新しい列名]に追加となる列名を入力します。
- [列名]で[身長]列を選択します。
- [演算子]は[次の値以上]を選択します。
- [値]はアイコンを[パラメーター]に変更して先ほど作成し[身長の合格点]を選択します。
- [出力]は[合格]と入力します。
- [それ以外の場合]は[不合格]と入力します。
結果を確認すると170以上で合格、それ以外は不合格と表示される新しい列が追加されました。
プログラムでは、if else 文が使われています。
= Table.AddColumn(変更された型, "合否", each if [身長] >= 身長の合格点 then "合格" else "不合格")
カスタム列の追加で条件式を入力する方法
パワークエリエディタを開きます。
- [列の追加]タブを選択します。
- [カスタム列]を選択します。
シナリオ通りに条件式を入力します。
シナリオ
170以上の場合に合格でそれ以外は不合格といった列を追加
- [新しい列名]に追加となる列名を入力します。
- [カスタム列の式]に以下の条件式を入力します。
= if [身長] >= 身長の合格点 then "合格" else "不合格"
結果を確認すると170以上で合格、それ以外は不合格と表示される新しい列が追加されました。
パワークエリ学習コンテンツ
-
【初心者向け】パワークエリ入門:ETLツールを使ってエクセルデータを簡単に整形・統合しよう!(1/11)
-
【実践ガイド】パワークエリでデータ収集:Excel、CSV、PDF、Webデータを簡単に取り込む方法をマスターしよう!(2/11)
-
【総力特集】パワークエリで列操作をマスター:選択、変更、移動、削除、結合、分割の詳細解説&実践テクニック!(3/11)
-
【徹底解説】パワークエリで行操作をマスター!フィルター・保持・削除テクニックと練習用エクセルで実践学習(4/11)
-
パワークエリでデータクレンジング: 文字列結合、0埋め、テキスト関数をマスター(5/11)
-
パワークエリで四捨五入、切り捨て、切り上げをマスターする方法(6/11)
-
パワークエリで効率的なデータグループ化を実現する方法(7/11)
-
パワークエリで時間と日付の計算をマスター!便利な関数を使って効率アップ(8/11)
-
パワークエリで条件別集計をマスターする方法(9/11)
-
Excelパワークエリでクロス集計表とデータベース形式を瞬時に変換する方法(10/11)
-
Excelパワークエリ入門: 効率的なデータ整理をマスターしよう!(11/11)
コメント