dropnaの基本的な使い方
Pandasの dropna
メソッドは、データフレームから欠損値(NaN)を持つ行または列を削除するために使用されます。基本的な使い方は以下の通りです。
import pandas as pd
# データフレームの作成
df = pd.DataFrame({
'A': [1, 2, np.nan],
'B': [5, np.nan, np.nan],
'C': [1, 2, 3]
})
# dropnaメソッドの使用
df.dropna()
上記のコードは、データフレームから欠損値を含むすべての行を削除します。結果として得られるデータフレームは以下の通りです。
A B C
0 1.0 5.0 1
dropna
メソッドは、デフォルトでは欠損値を含む行を削除しますが、 axis
パラメータを使用して欠損値を含む列を削除することも可能です。
df.dropna(axis=1)
このコードは、欠損値を含むすべての列を削除します。結果として得られるデータフレームは以下の通りです。
C
0 1
1 2
2 3
以上が、Pandasの dropna
メソッドの基本的な使い方です。次のセクションでは、特定の列で欠損値を持つ行を削除する方法について説明します。
特定の列で欠損値を持つ行を削除する
Pandasの dropna
メソッドは、特定の列で欠損値を持つ行を削除するためにも使用できます。これは subset
パラメータを使用して行います。以下にその使い方を示します。
import pandas as pd
import numpy as np
# データフレームの作成
df = pd.DataFrame({
'A': [1, 2, np.nan],
'B': [5, np.nan, np.nan],
'C': [1, 2, 3]
})
# 'A'列で欠損値を持つ行を削除
df.dropna(subset=['A'])
上記のコードは、’A’列で欠損値を持つ行を削除します。結果として得られるデータフレームは以下の通りです。
A B C
0 1.0 5.0 1
1 2.0 NaN 2
このように、 subset
パラメータを使用すると、特定の列で欠損値を持つ行を削除することができます。次のセクションでは、複数の列で欠損値を持つ行を削除する方法について説明します。
複数の列で欠損値を持つ行を削除する
Pandasの dropna
メソッドは、複数の列で欠損値を持つ行を削除するためにも使用できます。これは subset
パラメータに列のリストを渡すことで行います。以下にその使い方を示します。
import pandas as pd
import numpy as np
# データフレームの作成
df = pd.DataFrame({
'A': [1, 2, np.nan],
'B': [5, np.nan, np.nan],
'C': [1, 2, 3]
})
# 'A'と'B'列で欠損値を持つ行を削除
df.dropna(subset=['A', 'B'])
上記のコードは、’A’と’B’の両方の列で欠損値を持つ行を削除します。結果として得られるデータフレームは以下の通りです。
A B C
0 1.0 5.0 1
このように、 subset
パラメータに列のリストを渡すことで、複数の列で欠損値を持つ行を削除することができます。次のセクションでは、実践的な例について説明します。
実践的な例
それでは、実際のデータセットを用いて、特定の列で欠損値を持つ行を削除する方法を見てみましょう。ここでは、タイタニック号の乗客データを使用します。
import pandas as pd
import numpy as np
# タイタニック号のデータセットを読み込む
df = pd.read_csv('titanic.csv')
# 'Age'と'Sex'列で欠損値を持つ行を削除
df.dropna(subset=['Age', 'Sex'])
上記のコードは、’Age’と’Sex’の両方の列で欠損値を持つ行を削除します。このように、 dropna
メソッドと subset
パラメータを使用すると、特定の列で欠損値を持つ行を簡単に削除することができます。
以上が、Pandasの dropna
メソッドの使い方と、特定の列で欠損値を持つ行を削除する方法についての説明です。これらの知識を活用して、データ分析の作業をより効率的に進めてください。