Power Queryで表記ゆれを一括補正する方法

Excel
この記事は約5分で読めます。
こまちゃん
こまちゃん

表記ゆれの補正が大切なことはわかったんだけど

1つ1つ確認して補正するのがちょっと大変・・・

なまけもん
なまけもん

ちょっとだけ難しいかもしれないけど

「Table.AddFuzzyClusterColumn」って関数を使う方法があるよ

「Table.AddFuzzyClusetrColumn」とは?

「Table.AddFuzzyClusetrColumn」とは?

「Table.AddFuzzyClusterColumn」は、Power Queryで使える関数の1つです。

この関数を用いることで、選択した列の値をあいまいグループ化して得られた代表値が入った列を追加することができます。

どのような時に使用する?

この関数はデータ表記のゆれを補正して統一したい時に便利です。

1つ1つ値を手で補正しなくても代表値が入った列を作成してくれるため、データ表記ゆれの補正にかかる作業時間を大幅に短縮することができます。

さらに半角・全角なども補正してくれ、見落とし防止にも一役かってくれます。

<使用例>

「都道府県」列に対して関数を適用すると「都道府県-補正」という列が作成されます。

「都道府県」列でゆれていた表記が代表値の「福島」に統一されて「都道府県-補正」列に入っています。

Power Queryでの設定方法

Power Queryで使用する「Table.AddFuzzyClusterColumn」を使用する場合は、関数を手入力する必要があります。

Power Queryエディターの「表示」タブから「詳細エディター」を選択します。

直接編集できるテーブルが表示されるので、ハイライト部分に任意の記述を書き込みます。

let
    ソース = Excel.Workbook(File.Contents("C:\Users\chies\Desktop\ご当地ごはん.xlsx"), null, true),
    テーブル1_Table = ソース{[Item="テーブル1",Kind="Table"]}[Data],
    変更された型 = Table.TransformColumnTypes(テーブル1_Table,{{"都道府県", type text}, {"ジャンル", type text}, {"名称", type text}, {"季節", type text}}),
    表記ゆれ補正列 = Table.AddFuzzyClusterColumn(変更された型, "都道府県", "都道府県 - 補正",[Culture="ja-JP",Threshold=0.1])
in
    表記ゆれ補正列

<コードのハイライト部分説明>

詳細エディターにはクエリに適用されたステップの数式が、1行ごとに記載されています。

ハイライト部分内容
表記ゆれ補正列ステップ名(任意の名前)
Table.AddFuzzyClusterColumn関数(あいまいグループの列を追加)
変更された型テーブル
“都道府県”選択した列の名称
“都道府県-補正”追加する列の名称(あいまいグループ)
[Cluster = “ja-JP”, Threshold=0.1 ][ ]内はオプション設定
※詳細は「オプション」参照
オプション
オプション内容
Culture言語設定:”ja-JP”で日本語を設定
※デフォルトは英語
Threshold0.00-1.00の間でグループの類似度スコアを設定
(1.00は完全一致)
※デフォルトは0.80
SimilarityColumnName選択した列の値と代表値との類似度を表示する列
列を表示させたい時は任意の列名を設定する
※デフォルトはnull
IgnoreCase大文字と小文字を無視する設定。TrueかFalseを選択
True: “ABC”は”abc”と一緒にグループ化される
False:”ABC”と”abc”は別グループとされる
※デフォルトは「True」
IgnoreSpaceスペースを無視する設定。TrueかFalseを選択
True: “AB C”は”ABC”と一緒にグループ化される
False:”AB C”と”ABC”は別グループとされる
※デフォルトは「True」
TransformationTableカスタム値のマッピングに基づくレコードのグループ化を許可するテーブル。
※FromとToが含まれている必要あり
参照:Table.AddFuzzyClusterColumn – PowerQuery M | Microsoft Learn

まとめ

Power Queryの「Table.AddFuzzyClusterColumn」を使うとあいまいグループの代表値が入った列を追加することができます。

オプションでしきい値や各種条件を設定することで、グループ化された値が入った列を追加することができ、表記データゆれの補正にかかる時間の短縮や手作業による補正の見落としを低減する効果が期待できます。

この関数を使用する場合は、Power Queryエディターから直接記述してください。

数式の記述はちょっとハードルが高いですが、使えるようになるととても便利な関数です。

上手に使いこなして、データ表記ゆれの補正を素早く確実に行っちゃいましょう。

タイトルとURLをコピーしました