Data Model / DAXの基礎 2_ルールいろいろ①

Data ModelとDAXはPower Queryと違い、密接に関連するため、Data Model / DAXとして記載していくことにします。DAX*1に関する具体例に入る前に、まずはDAXを記述する上で留意すべき点(言い換えれば、基礎に関するベストプラクティス)について紹介をしたいと思います。

*1:Data Analysis eXpression, Power BIの言語

続きを読む

Data Model / DAXの基礎 1_DAXとは

本ブログのもう一つのトピックはData Model / DAXとなりますが、まずはDAXとは何かについて解説をします。下図の通り、MicrosoftテクノロジーのBIツールであるExcelとPower BIは、使いこなすためには前工程(Power Query)と後工程(Data Model / DAX)を習得する必要があります。

f:id:marshal115:20200424200205p:plain

続きを読む

Power Queryの応用_ファイル名を[Data]列のTableの中に挿入

以前の記事でCSVの結合に際してBinary.Combineを使った場合、ファイル名を抽出できないと記載しました。

marshal115.hatenablog.com

一方で、Binary.Combineではなく、Csv.Documentを使用すれば、最終的にデータを展開(結合)する前に、ファイル名をデータ列の[Table]内に挿入することができるようになります。今回はこれのやり方について説明します。

続きを読む

CSVとExcelの違い

ビジネスユーザーが自分で分析を行う際に使用するデータのうち、最も一般的なものがCSV(テキストファイル)やExcelとなります。今回はこの2つのデータの違いについて見ていきます。両者はどちらもExcelから開くことが可能であり、特にCSVは取り扱いに注意が必要なファイルとなります。

続きを読む

Power BIとは

本ブログはPower Query及びData Model / DAXを紹介するものですが、これらのテクノロジーを活用するためにはクライアント(ツール)が必要となります。いわゆるBIツールがこれに当たりますが、Power BI DesktopやExcelを使うことになります。今回はPower BI Desktop(以降「Power BI」)の特徴及びBI業界等について紹介していきたいと思います。

続きを読む

Power Queryの基礎 10_ピボット化・ピボットの解除

Power Queryの中で、最も強力な機能の1つがPivotの解除である。名前から結果をイメージしにくいですが、簡単に言えば、

横に伸びているデータを縦にまとめる

あるいは専門用語でいえば、

データの正規化

となります。

続きを読む

Power Queryの関数言語について

Power QueryはExcelで使われる関数と同じように、全ての処理は関数が関わってきます。これらの関数はM言語と呼ばれ、UIを使って実行するとExcelのマクロのように自動的に記録されていきます。Power Queryの初心者であればM言語を特に気にする必要はないですが、データ処理をより高度に効率化させるためにはPower Queryの関数について知っておく必要があります。

今回はこのPower Queryで使用される関数について、個別紹介ではなく、最も基本的な操作等について紹介したいと思います。

続きを読む

Power Queryの基礎 9_マージ・グループ化

前回の記事では、Excelでデータを結合をする際のベストプラクティスを紹介しました。今回は結合したクエリに「分類」をマージして、異なるデータ粒度でクエリをワークシートに出力する方法を紹介します。マージとは、Power Query版VLOOKUPであり、例えばマッピングテーブル(商品マスタ等)から該当する分類をVLOOKUPで抽出してくることに該当します。

続きを読む

Power Queryの基礎 8_Excelの結合

Power Queryの基礎 7まではCSVの結合について詳細に説明をしてきました。今回はもう一つよく使われるデータソースであるExcelの展開・結合方法について解説します。CSVの結合と同様、Excelの結合はM言語(Excel.Workbook)を使用します。

続きを読む

Power Queryの基礎 7_CSV結合④

CSVを結合する方法をいくつか紹介してきましたが、今回はその中で基もお手軽にファイルを結合できる方法を紹介します。その前に、CSVファイルを結合する方法をおさらいをしておきますと、

  • Binary.Combine( 前ステップ[Content] )

  • Csv.Document ( 前ステップ, [Encoding = 932] ) > 列の展開

という2つの方法でしたが、今回紹介するやり方は上記2つのどちらよりもお手軽にできるものとなります。

続きを読む