タグ別アーカイブ: ピボット

【パワークエリ・チャレンジ】1列のデータから複数列のテーブルデータを作成する

【割り算の余りの算出とピボット機能をうまく使ってVBAと同等の処理を行ってみましょう】

今回は下の画像のように1列のデータから、画像右側のようなテーブルデータを作成してみます

ポイント

ポイントは1列のデータの中で、何行目を何列目にするのかを明確にすることです

「何行目を何列目」にするかが分かれば、実はピボット機能(ピボット解除の逆)で簡単にテーブル化が行えます

インデックス列の追加と余りの計算

解説はエディタからはじめさせて頂きます

1列のデータをテーブル化してエディタを開いたら、空白をフィルターで取り除いた後に、下の画像のようにインデックス列を追加します

その後に「何行目を何列目にするか?」の印を作るために「インデックス列」を3で割り、余りを算出します

上の画像にて黄色の箇所をクリックした後、開いた画面で3を指定します

すると次の画像のような列が追加されます

引き算の追加

このままピボットをすると次の画像のようになります

空欄が混じってしまい、テーブルデータとしての規則性がありません

ですので、上の画像の「インデックス列」の代わりに3行毎集約するキーが必要になります

今回は、インデックス列から剰余の列を引くことで、下の画像のように集約キーを作成します

この引き算の処理により山田さんから始まる3行はに、木村さんから始まる行はに集約されます

引き算は余りの計算と同じ「標準」で行います

ピボット処理

では集約キーができたので、ピボット処理にて剰余の列の内容を列名になるようにします

このピボット処理は、「剰余列」を選択した上で、変換タブから行います

 列のピボットをクリックしたら、値列は列1の内容になるように指定してください

 そして、「詳細設定オプションにて」上の画像のように「集計しない」を指定してください

これで列名を変更して、無駄な列を削除したら完成です

<まとめ>

今回は、意外な方法で1列のデータから複数列のテーブルデータを作成しました

改めてPower Queryのピボットなどの機能は素晴らしいと感じました

 今回のケースは特殊であり、実際の使用機会はあまり想像がつかないですが、データ整形の際には断片的に活用できる機会も多いかと思います

ぜひ一度チャレンジしてみてください

にほんブログ村 資格ブログ ビジネススキルへ
にほんブログ村
にほんブログ村 IT技術ブログ VBAへ

【豆知識】ピボット/縦縦並び➡縦横に並び替え集計

 これまで何度か縦横並びを縦縦並びに変える「ピボット解除」については解説を行ってきました

 今回は、逆に縦縦並びのデータを「縦横」並びに変える「列のピボット」について解説します

 今回解説する「列のピボット」は、「集計」というステップも必要な場合には、相当便利な処理になります!

解説に使用する「元データ」は次の画像のデータです

こちらのデータを「地域」を軸にして、横展開します

実は、元データには「重複」データが含まれていますので、横展開する際には「合計」処理も必要になります

1.Power Queryエディタを開く

元データの上で右クリックし、Power Queryエディタ(以降、エディタ)を開きます

2.ピボットする列を選択

今回は、記事の冒頭で紹介したように「地域」を横展開します

3.「列のピボット」を実行

「列のピボット」はピボット解除のように右クリックではなく、「変換タブ」の「列のピボット」から指定します

上の画像の「列のピボット」をクリックすると次の画像が開きます

要は表の中味となるものを指定するわけですが、こちらは「売上金額」になります

値を指定して「OKボタン」を押すと次の画像のように、記事の冒頭で紹介した重複データも「合計」され、「列のピボット」が完成しています

4.合計以外の計算

前述の3.では「合計」処理を行いましたが、「平均」や「カウント」も計算できます

「列のピボット」ダイアログで「詳細設定オプション」の左横にある▼マークをクリックすると「合計」以外の方法も指定できます

平均を選択すると次の画像のように表示されます

もし、エクセルシートに読込んだ際に、エラーが発生した場合には、自動追加された「変更された型」ステップが不適切に行われている可能性があります

その場合には、上の画像の「変更された型」を削除するか、データ形式を変更するなどの処理が必要になります

今回の解説は以上です

最後まで記事を読んで下さり、誠にありがとうございました

にほんブログ村 資格ブログ ビジネススキルへ

にほんブログ村 IT技術ブログ VBAへ

にほんブログ村