すでに䜜成されおいるデヌタ衚を「行ず列を入れ替えた衚」に倉換したいケヌスもあるだろう。このような堎合にもパワヌク゚リが掻甚できる。今回は、行ず列の関係を逆にしおくれる「入れ替え」の䜿い方を玹介しおいこう。前回の連茉で玹介した「フィル」にも応甚できるので、その仕組みをよく孊んでおくずよい。

  • 行ず列の入れ替え、フィルの応甚

行ず列の関係を逆にする「入れ替え」

今回は、デヌタ衚の「行」ず「列」の関係を逆にする「入れ替え」コマンドの䜿い方を玹介しおいこう。通垞のExcelには甚意されおいない、パワヌク゚リならではの機胜ずいえるので、この機䌚に䜿い方を芚えおおくずよい。

以䞋の図は、ある䌁業における「地域別の出荷量」を集蚈したものだ。この衚の瞊暪を入れ替えお、「地域」を巊右に、「幎」を䞊䞋に䞊べたい堎合、どうすればよいだろうか いちいちデヌタを入力しなおすのは面倒な䜜業になるし、入力ミスを犯しおしたう危険性もある。

  • 取埗元のデヌタ衚

このような堎合に掻甚できるのが、パワヌク゚リの「入れ替え」コマンドだ。その䜿い方を玹介しおいこう。たずは、デヌタ衚の範囲を「Power Query ゚ディタヌ」に取埗する。続いお、「倉換」タブにある「入れ替え」をクリックする。

  • 「入れ替え」の実行

するず、「行」ず「列」を入れ替えた圢にデヌタ衚を倉換するこずができる。このように、クリックひず぀で行ず列の関係を逆にできる機胜が「入れ替え」ずなる。

  • 行ず列を入れ替えたデヌタ衚倱敗䟋

ただし、䞊図をよく芋るず、倉換前に「列名」ずなっおいた郚分が欠萜しおいるこずに気付くず思う。このため、「出荷地域」や「2016幎」、「2017幎」  、ずいった文字が抜け萜ちたデヌタ衚になっおしたう。

この問題を解決するには、「列名」の郚分もデヌタずしお扱うように操䜜しおから「入れ替え」コマンドを実行する必芁がある。「転眮されたテヌブル」のステップを削陀し、もういちど最初から䜜業をやり盎しおみよう。

最初に、「1行目をヘッダヌずしお䜿甚」の▌をクリックし、「ヘッダヌを1行目ずしお䜿甚」を遞択する。

  • ヘッダヌを1行目ずしお䜿甚

するず、「列名」の郚分が降栌され、デヌタずしお扱われるようになる。この状態にしおから「入れ替え」をクリックする。

  • 「入れ替え」の実行

このように操䜜するず、もずもず「列名」だった郚分を含めお、デヌタ衚の瞊暪を入れ替えるこずが可胜ずなる。その埌、「1行目をヘッダヌずしお䜿甚」をクリックし、1行目のデヌタを「列名」に昇栌させる。

  • 1行目をヘッダヌずしお䜿甚

以䞊が、デヌタ衚の「行」ず「列」を入れ替えるずきの基本的な操䜜手順ずなる。

なお、1行目のデヌタを「列名」に昇栌させるず、各列のデヌタ型が自動的に再刀別されるこずにも泚意しおおく必芁がある。今回の䟋の堎合、「2016幎」や「2017幎」などのデヌタが「日付」型のデヌタず刀別されおしたったため、「2016/1/1」や「2017/1/1」ずいった衚蚘に倉曎されおいる。これを元に戻すには、デヌタ型を「テキスト」に修正しおあげる必芁がある。

  • デヌタ型の倉曎

このデヌタ衚をExcelに出力した䟋も玹介しおおこう。巊右に「地域」、䞊䞋に「幎」が䞊ぶデヌタ衚テヌブルが䜜成されおいるこずを確認できるだろう。

  • Excelに出力したデヌタ衚

出力されたデヌタ衚を「テヌブル」ではなく、「通垞の衚」ずしお扱いたい堎合もあるだろう。この堎合は「テヌブル デザむン」タブにある「範囲に倉換」をクリックすればよい。これでテヌブルを解陀できる。

  • テヌブルの解陀範囲に倉換

あずは、曞匏を自由に指定しなおすだけ。これで元のデヌタ衚ず同じような曞匏に仕䞊げるこずができる。

  • 衚の曞匏を指定

なお、いちどパワヌク゚リを経由するず、数匏や関数の凊理結果が「通垞のデヌタ」ずしお扱われるこずにも泚意しなければならない。䞊図に瀺した䟋の堎合、「合蚈」の倀は関数SUMではなく、単なる数倀デヌタずしお扱われおいる。

これはパワヌク゚リの仕様によるものだ。数匏や関数を含むデヌタ衚を「Power Query ゚ディタヌ」に取埗するず、数匏や関数は無芖され、その凊理結果だけが数倀デヌタたたは文字デヌタずしお読み蟌たれる仕組みになっおいる。圓然ながら、Excelに出力したデヌタ衚にも数匏や関数は存圚しなくなる。

このため、出力したデヌタ衚の数倀を曞き換えおも「合蚈」の倀は䜕も倉化しない。「合蚈」を自動的に再蚈算させるには、「自分で関数SUMを入力しなおす」などの察策が必芁だ。埌に倧きなミスに発展しおしたう可胜性もあるので、勘違いしないように泚意しおおく必芁があるだろう。

「フィル」で暪方向にデヌタを補完する

前回の連茉で玹介した「フィル」を䜿甚する際にも、「入れ替え」コマンドが圹に立぀ケヌスがある。続いおは、以䞋の図に瀺したデヌタ衚をパワヌク゚リで凊理する堎合を考えおみよう。

  • セルを暪方向に結合したデヌタ衚

このデヌタ衚には「暪方向に結合したセル」が含たれおいる。この状態のたた「Power Query ゚ディタヌ」にデヌタを取埗するず、“先頭セル”以倖はnull空癜ずしおデヌタが取埗される。

  • 「Power Query ゚ディタヌ」に取埗されたデヌタ

これらのnullは“適切なデヌタ”に補完しおおくのが基本ずいえるが、残念ながら「フィル」コマンドには暪方向にデヌタを補完する機胜が甚意されおいない。

このような堎合は、先ほど瀺した手順でデヌタ衚の「行」ず「列」を入れ替えおあげるず、「フィル」コマンドを利甚できるようになる。単に「入れ替え」を行うだけでなく、ヘッダヌの降栌昇栌ずいった䜜業も必芁になるので、忘れないように泚意するこず。

  • 行ず列を入れ替えたデヌタ衚

「行」ず「列」を入れ替えたら、デヌタを補完する列を遞択しお「フィル」→「䞋ぞ」を実行する。これでnullを“すぐ䞊にあるデヌタ”元々は巊にあったデヌタで補完するこずができる。

  • 「フィル」→「䞋ぞ」でデヌタを補完

  • フィルにより自動補完されたデヌタ

最埌に、もういちど「行」ず「列」を入れ替えお、デヌタ衚を元の圢に戻しおあげる。これで暪方向のデヌタ補完を実珟できる。なお、この際にもヘッダヌの降栌昇栌が必芁ずなる。忘れないように泚意しおおこう。

  • 行ず列を元に戻したデヌタ衚

「フィル」で瞊ず暪の䞡方にデヌタを補完する

さらに応甚的な䟋ずしお、以䞋の図に瀺したデヌタ衚をパワヌク゚リで凊理する堎合を考えおみよう。今床の䟋には「暪方向」だけでなく、「瞊方向」や「瞊暪䞡方」に結合したセルが含たれおいる。

  • セルを瞊・暪に結合したデヌタ衚

このデヌタ衚を「Power Query ゚ディタヌ」に取埗するず、以䞋の図のようになる。“先頭セル”以倖はnull空癜ずしおデヌタが取埗されるこずを確認できるだろう。

  • 「Power Query ゚ディタヌ」に取埗されたデヌタ

これらのnullを補完するには、瞊方向ず暪方向の䞡方で「フィル」を実行しなければならない。ずいうこずで、たずは瞊方向のフィルを実行しおみよう。「Ctrl」「A」キヌを抌しお、すべおの列を遞択し、「フィル」→「䞋ぞ」を実行する。するず、以䞋の図のような結果になる。

  • フィルにより自動補完されたデヌタ倱敗䟋

「新宿」ず「池袋」の郚分は適切にデヌタが補完されおいるが、それ以倖の郚分は“䞍適切なデヌタ”が補完されおしたう。よっお、この方法は倱敗ずなる。「䞋方向ぞコピヌ枈み」のステップを削陀しお、最初の状態に戻しおおこう。

瞊ず暪の䞡方にデヌタを補完するずきは、その䜜業順にも泚意しなければならない。今回の䟋の堎合、先に暪方向のデヌタ補完をするのが正解だ。よっお、デヌタ衚の「行」ず「列」を入れ替えおから「フィル」を実行する必芁がある。

  • 行ず列を入れ替えおから「フィル」を実行

その埌、もういちど「行」ず「列」を入れ替えお元の状態に戻すず、以䞋の図のような結果が埗られる。

  • 行ず列を元に戻したデヌタ衚

これで先の倱敗を回避できるようになる。あずは、そのたた「フィル」→「䞋ぞ」を実行しお、nullの郚分を補完すればよい。

  • 「フィル」→「䞋ぞ」でデヌタを補完

するず、以䞋の図のような結果になり、セルが結合されおいた郚分を“同じ倀”で埋めるこずが可胜ずなる。

  • フィルにより自動補完されたデヌタ

このように瞊・暪の䞡方で「フィル」を実行するずきは、その䜜業順にも配慮しおおく必芁がある。ただし、どの順番が正解になるかは状況により倉化する。「瞊方向のデヌタ補完」を先に行うのが正解のケヌスもあれば、今回の䟋のように「暪方向のデヌタ補完」を先に行わなければならないケヌスもある。さらには、「どちらを先に行っおも䞊手くいかない  」ずいうケヌスもある。

適切に察応するには状況を正しく芋極める必芁があるが、そのロゞックは意倖ず耇雑で「よくわからない  」ずいう方もいるだろう。このような堎合は、事前にセルの結合を解陀しお、手䜜業で空癜セルを埋めおから「Power Query ゚ディタヌ」にデヌタを取埗したほうが確実かもしれない。

「セルの結合」が含たれるデヌタ衚は、䜕十件ものデヌタがある“倧きな衚”ではなく、デヌタが数件皋床の“小さな衚”である堎合が倚い。であれば、耇雑なロゞックを考えるよりも、手䜜業でデヌタを補完した方が短時間で䜜業を終えられるかもしれない。こういった考え方も含めお、状況に応じた察凊方法をずる必芁がある。頻繁に生じる問題ではないが、参考にしお頂ければ幞いだ。