パンダ-空のセルのクリーニング


空のセル

空のセルは、データを分析するときに間違った結果をもたらす可能性があります。


行を削除する

空のセルを処理する1つの方法は、空のセルを含む行を削除することです。

データセットは非常に大きくなる可能性があり、いくつかの行を削除しても結果に大きな影響はないため、これは通常は問題ありません。

空のセルのない新しいデータフレームを返します。

import pandas as pd

df = pd.read_csv('data.csv')

new_df = df.dropna()

print(new_df.to_string())

クリーニングの例では、「dirtydata.csv」というCSVファイルを使用します。

dirtydata.csvをダウンロードしますまたはdirtydata.csvを開きます

注:デフォルトでは、dropna()メソッドは新しいDataFrameを返し、元のDataFrameを変更しません。

元のDataFrameを変更する場合は、 inplace = True引数を使用します。

NULL値を持つすべての行を削除します。

import pandas as pd

df = pd.read_csv('data.csv')

df.dropna(inplace = True)

print(df.to_string())

注:これで、dropna(inplace = True)は新しいDataFrameを返しませんが、元のDataFrameからNULL値を含むすべての行を削除します。


空の値を置き換える

空のセルを処理する別の方法は、代わりに新しい値を挿入することです。

このように、いくつかの空のセルのために行全体を削除する必要はありません。

このfillna()メソッドを使用すると、空のセルを次の値に置き換えることができます。

NULL値を数値130に置き換えます。

import pandas as pd

df = pd.read_csv('data.csv')

df.fillna(130, inplace = True)

指定された列に対してのみ置換

上記の例では、データフレーム全体のすべての空のセルが置き換えられます。

1つの列の空の値のみを置き換えるには、DataFrameの列名を指定します。

「カロリー」列のNULL値を数値130に置き換えます。

import pandas as pd

df = pd.read_csv('data.csv')

df["Calories"].fillna(130, inplace = True)

w3schools CERTIFIED . 2021

認定を受けましょう!

Pandasモジュールを完了し、演習を行い、試験を受けると、w3schoolsの認定を受けます。

$ 10登録

平均、中央値、または最頻値を使用して置換

空のセルを置き換える一般的な方法は、列の平均値、中央値、または最頻値を計算することです。

Pandasは、mean() median()およびmode()メソッドを使用して、指定された列のそれぞれの値を計算します。

MEANを計算し、空の値をそれに置き換えます。

import pandas as pd

df = pd.read_csv('data.csv')

x = df["Calories"].mean()

df["Calories"].fillna(x, inplace = True)

平均=平均値(すべての値の合計を値の数で割ったもの)。

MEDIANを計算し、空の値をそれに置き換えます。

import pandas as pd

df = pd.read_csv('data.csv')

x = df["Calories"].median()

df["Calories"].fillna(x, inplace = True)

中央値=すべての値を昇順で並べ替えた後の中央の値。

MODEを計算し、空の値をそれに置き換えます。

import pandas as pd

df = pd.read_csv('data.csv')

x = df["Calories"].mode()[0]

df["Calories"].fillna(x, inplace = True)

モード=最も頻繁に表示される値。