NaN値をチェックする方法

PYTHON3 チュートリアル

はじめに

データ分析において、欠損値(NaN値)は避けられない問題です。これらの値は、データ収集の過程でのエラーや、データソースの不完全さに起因することが多いです。Pythonのpandasライブラリを使用することで、これらのNaN値を効果的に扱うことができます。本記事では、pandasを用いてNaN値を検出し、対処する具体的な方法を紹介します。

NaN値の検出

まずは、データセット内のNaN値を検出する方法から見ていきましょう。pandasには、NaN値を簡単に見つけ出すための機能が備わっています。

サンプルコード1: NaN値の検出

import pandas as pd
import numpy as np

# サンプルデータセットの作成
data = {'column1': [1, 2, np.nan, 4], 'column2': [np.nan, 2, 3, 4]}
df = pd.DataFrame(data)

# NaN値のチェック
print(df.isna())

このコードは、データフレーム内の各要素がNaN値かどうかを真偽値で返します。結果は以下のようになります。

   column1  column2
0    False     True
1    False    False
2     True    False
3    False    False

NaN値の処理

NaN値を検出した後は、これを処理する必要があります。主に、NaN値を別の値で置き換える方法と、NaN値を含む行や列を削除する方法があります。

サンプルコード2: NaN値の置換

# NaN値を平均値で置換
df['column1'].fillna(df['column1'].mean(), inplace=True)
print(df)

このコードでは、column1のNaN値をその列の平均値で置き換えています。出力は以下の通りです。

   column1  column2
0      1.0      NaN
1      2.0      2.0
2      2.333333  3.0
3      4.0      4.0

サンプルコード3: NaN値の削除

# NaN値を含む行を削除
df.dropna(inplace=True)
print(df)

こちらのコードは、NaN値を含む行をデータフレームから削除します。結果は以下のようになります。

   column1  column2
1      2.0      2.0
3      4.0      4.0

まとめ

この記事では、Pythonのpandasライブラリを使用して、データセット内のNaN値を効果的にチェックし、処理する方法を解説しました。NaN値の検出から、それらを置換または削除する方法まで、具体的なコードを用いて説明しました。これらのテクニックを使うことで、データの品質を向上させ、より正確なデータ分析を行うことができます。

購読
通知
0 Comments
Inline Feedbacks
View all comments