Pandas: 条件に基づいて列を追加する方法
次の構文を使用して、条件に基づいて pandas DataFrame の列の値を合計できます。
df. loc [df[' col1 '] == some_value , ' col2 ']. sum ()
このチュートリアルでは、次の pandas DataFrame を使用したこの構文の実際の使用例をいくつか示します。
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'B', 'B', 'C'], ' conference ': ['East', 'East', 'East', 'West', 'West', 'East'], ' points ': [11, 8, 10, 6, 6, 5], ' rebounds ': [7, 7, 6, 9, 12, 8]}) #view DataFrame df team conference points rebounds 0 A East 11 7 1 A East 8 7 2 A East 10 6 3 B West 6 9 4 B West 6 12 5 C East 5 8
例 1: 条件に基づいて列を追加する
次のコードは、チームが「A」に等しい行のポイントの合計を見つける方法を示しています。
df. loc [df[' team '] == ' A ', ' points ']. sum () 29
例 2: 複数の条件に基づいて列を追加する
次のコードは、チームが「A」に等しく、カンファレンスが「East」に等しい行のポイントの合計を見つける方法を示しています。
df. loc [(df[' team '] == ' A ') & (df[' conference '] == ' East '), ' points ']. sum () 29
例 3: いくつかの条件の 1 つに基づいて列を追加します。
次のコードは、チームが「A」または「B」に等しい行のポイントの合計を見つける方法を示しています。
df. loc [df[' team ']. isin ([' A ',' B ']), ' dots ']. sum () 41
このページでは、パンダのチュートリアルをさらに見つけることができます。