先日大量のデータの入ったCSVファイルを渡されたのですが、処理を作ってもうまく処理できずエラーが発生してしまい、怒りが爆発してプログラムを見直していたのですが、最終的に判明したのはデータの入力なし・・・そんなことあるのかよ😢
そんな感じの悲劇が2度と起きないようにするための簡単コードをメモっておきます。
データの入力ミス(入力忘れ?)を検出するコード
CSVファイルを開いて各行をsplit()していくのもいいのですが、今回はpandas
を使用しました。こっちのほうが記載が少ないですしね。ライブラリは以下のようにインストールしておきます。
$ pip install pandas
そして、カウントするプログラムは以下のような記述でOKです。CSVファイルの読み込み後にdata.descrive()
を使用してもいいのですが、データ数が多いと見るだけでも大変なので、今回はデータのない箇所の数だけを返してもらうことにしました。
import pandas as pd def calculate_missing_values(file_path): # ファイルを読込 data = pd.read_csv(file_path) # 各列の欠損値の数を計算 missing_values_count = data.isnull().sum() return missing_values_count
おわりに
pandas
は強力すぎて死ねる。未来に同じことが起きませんように…