pandas:DataFrameの欠損値が含まれているデータを除外する方法

スポンサーリンク

DataFrameの欠損値が含まれているデータを除外する方法

DataFrameの欠損値が含まれているデータを除外するにはdropnaを使用します。

列方向に除外するにはaxis="columns"を指定します。

test.csvのデータ

id,name,count,rating
1,abc,13,4.38
2,defgh,4,8.56
3,ij,0,1.25
4,klmnopq,23,3.49
5,rst,11,0.51
import pandas as pd

df = pd.read_csv("test.csv")
print(df)
#    id     name  count  rating
# 0   1      abc     13    4.38
# 1   2    defgh      4    8.56
# 2   3       ij      0    1.25
# 3   4  klmnopq     23    3.49
# 4   5      rst     11    0.51

df.loc[0, "name"] = pd.NaT
df.loc[1, "count"] = pd.NaT
df.loc[4, "count"] = pd.NaT
print(df)
#    id     name count  rating
# 0   1      NaT    13    4.38
# 1   2    defgh   NaT    8.56
# 2   3       ij     0    1.25
# 3   4  klmnopq    23    3.49
# 4   5      rst   NaT    0.51

print(df.dropna())
#    id     name count  rating
# 2   3       ij     0    1.25
# 3   4  klmnopq    23    3.49

print(df.dropna(axis="columns"))
#    id  rating
# 0   1    4.38
# 1   2    8.56
# 2   3    1.25
# 3   4    3.49
# 4   5    0.51