Power Queryで食品標準成分表の別表のデータを整形する方法

Excel

みなさん,こんにちは。
シンノユウキ(shinno1993)です。

食品標準成分表をPower Queryで整形する方法について,連載形式で紹介しています。

前回の記事はこちら

Power Queryで値を置換する方法について,完全一致と部分一致の2パターンで紹介しました。前回までで,本表については計算可能な形に変換することができました。

今回から別表についても触れていきます。別表のデータをすべて整形し,それを本表に結合していくという形を取っていきます。

今回はまず,別表のデータをダウンロードし,それをすべて整形します。前回までに紹介した内容を踏まえ紹介します。

下記で別表のデータのダウンロード・整形を行っていきます。Power Queryに慣れた方は復習と思って取り組んでください。

では行きましょう!

本記事は連載:「食品標準成分表をPower Queryで整形する方法」の一部です。前回までに行った作業を前提にしますので,連載の初回(食品標準成分表をPower Queryで整形する方法【栄養士向け】)からご覧いただくことをオススメします。

スポンサーリンク

別表データのダウンロード・整形する方法

まず,公表されている食品標準成分表のデータについて確認しておきます。現在は下記のデータが公表されています:

  • 日本食品標準成分表2020年版(八訂):
    • 本表
  • アミノ酸成分表編:
    • 第1表 可食部100g当たりのアミノ酸成分表
    • 第2表 基準窒素1g当たりのアミノ酸成分表
    • 第3表 アミノ酸組成によるたんぱく質1g当たりのアミノ酸成分表
    • 第4表(基準窒素による)たんぱく質1g当たりのアミノ酸成分表
  • 脂肪酸成分表編:
    • 第1表 可食部100g当たりの脂肪酸成分表
    • 第2表 脂肪酸総量100g当たりの脂肪酸成分表
    • 第3表 脂質1g当たりの脂肪酸成分表
  • 炭水化物成分表編:
    • 本表 可食部100g当たりの炭水化物成分表
    • 別表1 可食部100g当たりの食物繊維成分表
    • 別表2 可食部100g当たりの有機酸成分表

これまでは「日本食品標準成分表2020年版(八訂)」の本表のみ使用してきましたが,これからは別表についても扱っていきます。上記のうち「可食部100g当たり」と書かれたデータを扱います。それ以外は,栄養計算用のデータとしては性質が異なるため今回は取り扱わないこととします。

ではさっそく,これらのデータをダウンロード・整形していきましょう。

ステップ①:データをダウンロードする

まずはすべての別表のデータをダウンロードします。下記のURLにアクセスし,画像を参照しデータをダウンロードしてください。

ダウンロードする成分表のデータ

なお5つのデータはそれぞれ下記に該当します:

  1. アミノ酸成分表編:第1表可食部100g当たりのアミノ酸成分表
  2. 脂肪酸成分表編:第1表可食部100g当たりの脂肪酸成分表
  3. 炭水化物成分表編:本表可食部100g当たりの炭水化物成分表
  4. 炭水化物成分表編:別表1可食部100g当たりの食物繊維成分表
  5. 炭水化物成分表編:別表2可食部100g当たりの有機酸成分表

データをダウンロードしたら,それを本表と同じフォルダー内においてください。

同じ階層に置く

これにより,インポート時にファイルが見つけやすくなります。

ステップ②:Power Queryでインポートする

次にPower Queryでファイルをインポートします。この連載をご覧の方には,インポートの方法を改めて説明する必要はないですよね?今回ダウンロードした5つのファイルについて,それぞれインポートしてください。

念のため手順のみ再掲すると,①Excelメニューの「データ」→②「データの取得」→③「ファイルから」→「④ブックから」を選択します。

なお5つのファイルについて,それぞれインポートするシート名が異なります(わかりづらいですね)。下記でインポート対象となるシートをまとめておきますので,確認しながら進めてください:

ファイル名別表の種類対象シート名
20201225-mxt_kagsei-mext_01110_022アミノ酸表全体
20201225-mxt_kagsei-mext_01110_032脂肪酸表全体
20201225-mxt_kagsei-mext_01110_042炭水化物表全体
20201225-mxt_kagsei-mext_01110_043食物繊維表全体
20201225-mxt_kagsei-mext_01110_044有機酸表全体

ステップ③:Power Queryでデータを変換する

データをインポートしたら,それぞれのデータを変換します。具体的には,5つのデータすべてについて,下記の作業を行います:

  • 不要な行の削除:それぞれのデータで不要な行を削除します。同時に「成分識別子」の行をヘッダーとして設定できるよう調整します
  • 不要な列の削除:空列やデータの末尾に不要な列が含まれる場合はそれを削除します
  • 適切なデータ型への変換:とくに「索引番号」のデータ型を「整数型」にする点に留意してください

これらの方法の詳細については,下記の記事を参照しながら行ってください:

値の置換はとりあえず必要ありません。すべてのデータを結合した段階でまとめてやってしまいましょう。

ステップ④:クエリ名を編集する

データを書き出す前に,クエリ名を編集します

クエリ名は,初期状態では読み込んだシート名になってしまっています。これだと後々わかりづらくなります。それぞれの別表を識別できるよう変更しましょう。

ステップ②でそれぞれのファイル名と対応する別表の種類を挙げています。これに準じて変更してみてください。

ステップ⑤:Power Queryでデータを書き出す

最後にデータを書き出します。ホーム→「閉じて読み込む」を選択し,保存しましょう。最終的に下記のようになっていれば概ね問題ないかと思います:

最終的な画面

脂肪酸成分表にエラーがでています。これは元データの備考欄にエラーが存在するためです。エラーが1つであれば気にする必要はありません。また,このエラーは計算に影響するものでもないので,とりあえず放置してOKです。

まとめ

今回は,別表のデータをダウンロードし,それを整形する方法について紹介しました。量が多くて大変だったと思いますが,これまでの復習感覚でやってみてください。

次回はこの別表のデータを使用して,別表にしかない食品(本表にはない食品)を抽出する方法を紹介したいと思います。

連載目次

  1. 食品標準成分表をPower Queryで整形する方法【栄養士向け】
  2. 栄養士のためのPower Query基礎知識【できること・メリット】
  3. 栄養士のためのPower Query超入門【インポート・変換・書き出し】
  4. Power Queryで複数のシートを縦に結合する方法
  5. Power Queryで不要な行・列を削除する方法【データクリーニング】
  6. Power Queryで値を置換する方法【完全一致と部分一致】
  7. Power Queryで食品標準成分表の別表のデータを整形する方法現在のページ
  8. Power Queryで特定シートのみに含まれるレコードを抽出する方法
タイトルとURLをコピーしました