0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

[Power Query] Table.Transpose と、Table.UnpivotOtherColumnsと、年(yyyy)を日付(yyyy/mm/dd)に変換する話

Last updated at Posted at 2021-11-05

以下のようなテーブルをPower Queryで整えていきます。2種類の方法を試してみます。

image.png

解決方法その1

行列を入れ替えて、項目を整えます。

Transposeでテーブルを転置する

 変換リボンの「入れ替え」を押します。

    転置されたテーブル = Table.Transpose(Sheet1_Sheet),

 実行後のテーブルは、以下のようになります。
image.png

1行目をヘッダーに昇格する

 「1行目をヘッダーとして使用」を適用すると、以下のようになります。

image.png

Mesure項目の名前をYearに変更する

 Measureのカラム名をYearに変更します。
image.png

Year項目を日付型に変更する

 Yearの項目を日付に変更するには、以下の2つの手順が必要です。

  • Yearをテキスト型に変更
  • Yearを日付型に変更

 2番めの操作時に、「既存のものを置換」するか、「新規手順の追加」をするか聞かれます。置換してしまうと、最初の処理が無効になり、以下のように、年月がおかしくなってしまいます。
image.png

 「新規手順の追加」で行うと、以下のように、日付が期待通りに変換されます。
image.png

解決方法その2

 項目を縦持ちにして、年単位の比較を行うテーブルを作成します。

1行目のをヘッダーに昇格する

image.png

Measure以外の列のピボット解除

 Measure以外の列のピボットを解除すると以下のようになります。

    ピボット解除された他の列 = Table.UnpivotOtherColumns(変更された型1, {"Measure"}, "属性", "値")

image.png

属性項目の名前をYearに変更する

 「属性」の項目名を「Year」に変更します。
image.png

Year項目を日付型に変更する

 Yearの項目を日付型に変更します。この場合、年はピボット解除処理でテキスト型になっているため、1回で変換できます。
image.png

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?