見出し画像

泥臭くも効率的にやるフリーテキスト集計

この記事はfreeeデータに関わる人たち Advent Calendar 2020 10日目のエントリーです。

こんにちは。Analyticsチームのララ・チャンです。
生のテキストを扱うとき、避けて通れないのが表記揺れ。
集計するうえで、やっかいですね。

今日はこれを、力技で表記統一するやり方をサクッとご紹介します。


目次

①間引き
②全角半角
③区切り文字
④名寄せ

4ステップで完了します。
必要なのは、ExcelかGoogleスプレッドシートだけ。

私がITツールの利用実態調査をしたときの、実際のフリーテキスト回答を参考にお送りいたします。
*ショートカットキー:Macのものを使っています
*画像:無料で使えるスプレッドシートを使っています


①間引き

シートにデータを乗せたら、作業開始です。
まずは無効票を撲滅します!

>無効票の例

不明
使っていません
わからない
humei
nai
wakaran
どういうこと?
社外秘
思い出せそうな気がすr
(゚∀三゚三∀゚)
abcabcabcabcabc,HFHFHFHFHFHF

列を追加して、この後の作業から除外する目印をつけましょう。
目印はアルファベットなど、入力しやすい一文字がおすすめです。

[フィルタ機能]を使ってA→Zに並べ替えすると見つけやすいです。
見えなくするときに絞り込みしいやすいように、文字も1種類だと良いでしょう。

スクリーンショット 2020-12-10 6.10.04


②全角半角

半角と全角、大文字小文字を統一します。
テキストによっては長くなるため、半角小文字がおすすめです。

ASC関数:半角にする
JIS関数:全角にする
LOWER関数:小文字にする
UPPER関数:大文字にする

列を追加して、テキストを半角に変換しましょう。
名寄せ作業を行うので、変換したら値貼り付けします(Command + Shift + V)

スクリーンショット 2020-12-10 6.29.58

見慣れている文字列ほど、違和感を感じると思います。
わかります。でも勇気を持って半角小文字にしてください。

③区切り文字

回答者が入力してくれる区切り文字は、千差万別です。
スペース以外なら何でも良いので、一つ一つ列内を置換していきましょう!

※スペースを避けたいのは、サービス名にも含まれてしいまうため。
「gsuit」も「g suit」も表記揺れなので、集計するときの意図しない分割を避けます。

>良く見る区切り文字

スペース:A B C
カンマ:A,B,C
スラッシュ:A/B/C

[検索と置換]の機能で、[検索]の範囲を列に限定して「すべて置換」します(Command + Shift + H)

スクリーンショット 2020-12-10 6.51.49

ざっと眺めて、区切りとして使われている文字を、どんどん置換していきましょう。
必要に応じて手作業で区切り文字を入れたり、不要な文字を削ったりもします。
主張の少ない、カンマにすると見やすいです。


④名寄せ

ここからが本番です。別でシートを用意してください。
表記統一する規格書を作ります。

スクリーンショット 2020-12-10 7.00.27

A列:check
B列:名寄せ
C列〜:パターン

名寄せ列は、数あるパターンの中から統一したい表記を入れてください。
実際に集計するときの値になります。

パターン列は、[検索と置換]で一括編集するためのバリエーションです。
見つけ次第、一つ一つ足していき、目録を作ります。

checkの列は、最終確認で使う目印にします。

この規格書を書きながら、あとはひたすら[検索と置換]!
ただひたすらに、泥臭く。がんばってください!

スクリーンショット 2020-12-10 7.08.05



おわりに

実際はもっとカスタマイズしてやっているのですが、サクッと伝えたくて省きました。
少しでも参考になれば幸いです。

本日のエントリーは以上です。
ここまで読んでいただき、ありがとうございました!

明日のエントリーもお楽しみに!(゚∀三゚三∀゚)