データを受け取ったらチェックすること

データは手に入れた。次に前処理・・・の前にデータを確認する。

データを手に入れたらすぐに前処理というとそうはいかない。データがきちんとしているか、チェックしなければならない。この工程をせずに先に進むと、後で抜けもれが発覚したり、どのように処理するかを決めなおさなければならず、余計な手間がかかる。

確認する内容

データの定義

特に初めて扱うデータの場合、何のデータであるのかをきちんと把握する必要がある。「○○というデータらしい」「□□のデータだろう」など曖昧な言葉ではなく、正しくその定義を確認する。データ定義書があればそれに越したことは無いが、内容の詳細まで書かれた資料がいつもあるわけではない(というか、ある方がめずらしい)。データの中身を知らなければ、正しいかどうかのチェックのしようもない。

過不足がないか

「売上上位100件のデータ」など解り易い数字があればその件数を確認することで抜け漏れが発生していないかの最初のチェックができる。逆に余計なデータも含まれていることがありそのまま使うと結果がおかしくなることもある。日付であれば月別や日別でみることで、揃っているかどうかがわかる。

件数の指定がない場合でも、規模感を知っていればそこから大きく外れていないかを確認できる。あまりに違う場合は連携データが違う、過不足が発生しているなど問題が起きていないか調べ、それもなければ本当に正しいかをデータ作成者に確認する。

欠損値や異常値

件数は正しくても一部データが壊れていたりすることがある。例えば先頭が0になっているはずのデータ(IDなど)が、数値型になって先頭の0が消えているような場合である。作成者がデータに慣れておらずExcelで作業をしてそのまま保存した場合に起きる。修正可能かつ工数が少ないので対応に手間がかからないか、または時間が無いのでやむをえない場合を除いて、基本的には作り直しを要求する方がよい。それ以後定期的に同様の作業が発生する場合は特にそうするべきだ。

異常値については、例えば回数分布のようにそのまま集計しても他とあまりに違う数値が少量紛れ込んでいるのはすぐわかるので排除できる、というようにさほど影響がない場合は考慮せずとも良いが、そうでなければそのまま使うか修正するかを検討する。ローカルルールで知らないところで勝手に数値を入れたりしている場合もあるため、注意が必要。

重複データの扱い

重複している場合そのまま使うのか、ユニークにするのかは分析の内容次第なので、関係者と協議をする。処理の中で単に重複を省くだけで済むならそれでよいが、1つのIDに複数の属性がついていてどれかを選ばなければならない、というような場合は優先順位をどうするかも決める。

全体の俯瞰

最後に全体の俯瞰をする。カテゴリ別に件数を集計して、おかしなところがないかを確認する。男女別で見たらほぼ同数なはずなのに偏っている、あるカテゴリ別で見れば人気のあるカテゴリとそうでないカテゴリがあるはずなのに似たような数字になっているなど、予想している数字とずれがあれば、データ作成者に確認する。必ずしもデータ作成者が間違えているわけではなく、データは正しく自分の認識が間違えている、あるいは特殊な事例が起きた可能性もある。

そして前処理へ

ここでチェックが漏れたりすると、後で前処理や分析をしている最中に気づいて大きな手戻りをしたり、もっとずっと後になって間違いが発覚することもあるのでできる限り前段階で問題は潰しておくのが結局のところは最も安全。データのチェックが終われば、今度こそ前処理のフェーズである。