パンダ:一部の行を除いてすべての行を削除する方法
次のメソッドを使用して、pandas DataFrame から一部の行を除くすべての行を削除できます。
方法 1: 列に特定の値を持つ行を除くすべての行を削除する
#drop all rows except where team column is equal to 'Mavs' df = df. query (" team == 'Mavs' ")
方法 2: 列に複数の特定の値のいずれかを含む行を除くすべての行を削除する
#drop all rows except where team is equal to 'Mavs' or 'Heat' df = df. query (" team == 'Mavs' | team == 'Heat' ")
次の例は、次の pandas DataFrame で各メソッドを実際に使用する方法を示しています。
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['Mavs', 'Mavs', 'Heat', 'Heat', 'Cavs', 'Cavs'], ' points ': [18, 22, 19, 14, 14, 11], ' assists ': [5, 7, 7, 9, 12, 9]}) #view DataFrame print (df) team points assists 0 Mavs 18 5 1 Mavs 22 7 2 Heat 19 7 3 Heat 14 9 4 Cavs 14 12 5 Cavs 11 9
例 1: 列に特定の値を持つ行を除くすべての行を削除します。
次の構文を使用して、チーム列の値が「Mavs」である行を除くすべての行を削除できます。
#drop all rows except where team column is equal to 'Mavs'
df = df. query (" team == 'Mavs' ")
#view updated DataFrame
print (df)
team points assists
0 Mavs 18 5
1 Mavs 22 7
チーム列に値「Mavs」を持つ行を除いて、すべての行が削除されていることに注意してください。
例 2: 列に複数の特定の値の 1 つを含む行を除くすべての行を削除します。
次の構文を使用して、チーム列の値が「Mavs」または「Heat」である行を除くすべての行を削除できます。
#drop all rows except where team column is equal to 'Mavs'
df = df. query (" team == 'Mavs' | team == 'Heat' ")
#view updated DataFrame
print (df)
team points assists
0 Mavs 18 5
1 Mavs 22 7
2 Heat 19 7
3 Heat 14 9
「Team」列の値が「Mavs」または「Heat」である行を除いて、すべての行が削除されていることに注意してください。
追加リソース
次のチュートリアルでは、パンダで他の一般的なタスクを実行する方法を説明します。
Pandas DataFrame の最初の行を削除する方法
Pandas DataFrame の最初の列を削除する方法
Pandasで重複した列を削除する方法