PandasにおけるDataFrameでNaN値を持つ行を削除する

PandasにおけるDataFrameでNaN値を持つ行を削除してみます。

NaN値とは、「Not A Number」の略で、データの欠落値を表すものです。

■Python

今回のPythonのバージョンは、「3.8.5」を使用しています。(Windows10)(pythonランチャーでの確認)

■DataFrameを作成する

PandasにおけるDataFrameでNaN値を持つ行を削除する前に、DataFrameを作成します。

■コード

import pandas as pd
import numpy as np

data = {
    '数字':[10,20,30,45,np.nan,65,np.nan,89,98,np.nan]
}

df = pd.DataFrame(data,columns =['数字'])

print(df)

インポートでPandasモジュールとNumpyモジュールを呼び出します。dataという変数を作成し、その中に「数字」という1つの列を格納します。列の値には数値とNaN値を入れておきます。

格納後、dfという変数を作成し、pd.DataFrame()と記述し、DataFrameを作成。作成後、dfという変数に格納します。

■実行

このスクリプトを実行すると、作成したDataFrameが出力されて、列の値にはNaN値があることが確認できました。

■DataFrameでNaN値を持つ行を削除する

DataFrameの用意できましたので、DataFrameでNaN値を持つ行を削除するスクリプトを書いていきます。

■コード

import pandas as pd
import numpy as np

data = {
    '数字':[10,20,30,45,np.nan,65,np.nan,89,98,np.nan]
}

df = pd.DataFrame(data,columns =['数字'])

df = df.dropna()

print(df)

DataFrameでNaN値を持つ行を削除する場合は、dfという変数を作成し、pd.DataFrame()と記述し、DataFrameを作成。その後に、dfという変数の中で、df.dropna()を使用します。df.dropna()を使用することで、NaN値を持つ行を削除することができます。

削除した後に、print関数で、dfという変数のDataFrameを出力してみます。

■実行

このスクリプトを「df_nan_d_2.py」という名前で保存し、コマンドプロンプトから実行してみます。

実行してみると、作成したDataFrame内のNaN値が削除されて出力できることを確認できました。

コメント

タイトルとURLをコピーしました