Excelでピボットテーブル使う人に全力でPowerQueryをお勧めしたい

週末プログラミングの一環です。

データ分析がブーム的に盛り上がっていますが、今でも Excelはビジネス現場での重要なツールですよね。

そして、マイクロソフトはどんどんExcelを進化させていて、データ分析しやすくしています。

無料でデータ分析するならMicrosoftのPower BI Desktopがおすすめ

 

そして今回紹介したいのは、データ分析を簡単にしてくれるPowerQueryというExcelアドイン機能です。これを知っておくと、データの加工処理が劇的に楽になります。

 

データを集計、加工するときの問題

データをクロス集計したりするためには、ピボットテーブルが便利です。

しかし問題は、ピボットテーブルを作る前の段階にあります。元のデータを綺麗に整形しなきゃいけないのです。。。

元のデータに余分な行が含まれていたり、複数のデータを組み合わせなきゃいけなかったり。

データ分析作業の大半は、前処理の労力に占められるとも言われます。こんな本もあるぐらいです。

この前処理をいかに効率的に行うかが、データ分析の生産性に大きく左右されるのです。

 

データの取り込みと加工はPowerQueryを使う

そして本題に入りますが、その前処理を簡単にしてくれるのが、Power Queryです。

Excelで使う場合は、Office2016では普通に入ってます。それ以前のバージョンの方はアドインをインストールすると使えるようになります。

手抜きで申し訳ありませんが、導入方法や基本的な使い方はこちらをご覧ください。

Excel Power Query を使い始めるには – Qiita

ExcelPowerQueryを使ってデータ収集分析 – Qiita

 

PowerQueryで一番良いところはピボット解除ができる

データを集計、加工したい場合、クロス集計データであれば単純集計に変換した方が良いです。

クロス集計の例

データ国A国B国 C
人口100200300
面積102030
GDP50100300

単純集計に変換

データ
人口国A100
人口国B200
人口国C300
面積国A10
面積国B20
面積国C30
GDP国A50
GDP国B100
GDP国C300

これが、Excelでは結構面倒です。でも、PowerQueryであれば簡単にできてしまいます。

データを一度読み込んだら、対象の列を選択して、ピボット列の解除を行います。

列を選択して、右クリックから列を解除させるだけです。これだけでリスト形式のデータが出来上がりました。最初これを知った時はほんとに感動しましたよ。

 

データに空白がある場合は注意が必要

データが空白の場合は、ピボット解除のときに消えるので注意してください。その場合は、先に空白のデータを適当なデータで埋めて、ビボット解除した後もう一度置換すれば良いです。

Solved: Re: Unpivot removes rows with no/null values – how… – Microsoft Power BI Community

PowerQueryは他にもいいところがたくさんあります。
– 膨大なデータを軽い動作で取り込めること
– WebやExcel、CSVなど多様なデータを取り込めること
– 取り込むデータを絞り込めること
– 取り込むときにデータを好きなように加工できること
– 加工したデータの変換方法を覚えておけること

Excelでのデータ処理を効率化したい人には、ぜひ試して欲しいですね。

 

PowerQueryの情報は日本語だと少ないのですが、本だとこちらですかね。

 

あと、こういう本もあります。

 

 

英語で探すと結構出てきます。まとまって勉強するなら、Udemyのこちらのコースがおすすめです。英語ですが、字幕も出るので比較的わかりやすいですよ。

Microsoft Excel – Excel Power Query, Power Pivot & DAX

ちなみに、PowerQueryは最新のExcelであれば統合されているので、すぐに使うことができます。