分析用に収集したデータに欠損値(null)が入っている場合、そのまま利用すると、正しい分析結果が得られない場合がある。

その為、この欠損値が含まれるデータを除外したり、欠損値を0や対象項目の平均値に変換して対処する事が多い。

以下は、データの読み込み~欠損値の対応例

# ライブラリの読み込み(numpyとpandas)
import numpy as np
import pandas as pd

# pandasを利用したデータの読み込み
df = pd.read_csv("xxxx.csv")  --  自分で用意したデータを利用

# データの確認
df.head()
# 欠損値の有無の確認 > isnull関数を利用
df.isnull()
# 欠損値の存在有無の確認 > any関数を利用
df.isnull().any()
# 欠損値数の集計 > sum関数を利用
df.isnull().sum()
# 欠損値を0に変換する > fillna関数を利用して0を設定する
df.fillna(0)
# 指定項目に欠損値があるデータを削除する > dropna関数で項目を指定する *以下ではkcalに欠損値が含まれるデータを除外する
df.dropna(subset=["kcal"])
### 欠損値を対象項目の平均値に変換する方法

# 1)対象項目(ここでは"kcal"を利用)の平均値を算出してavgへ設定する > mean関数を利用
avg = df["kcal"].mean()

# 2)kcal項目の欠損値に平均値を入れる > fillna関数を利用
df["kcal"] = df["kcal"].fillna(avg)

# 3)testデータの中身を確認 > kcal項目の欠損値が平均値に代わっている
df.head()
おすすめの記事