列「x」、「y」、「z」を備えたパンダデータフレームがあります。列「x」でグループ化して、グループあたりの列「y」の値「a」の平均発生を見つけたいと思います。また、「z」の値が「b」ではない場合にのみ、発生をカウントします。
パンダでこれを行う方法は次のとおりです。

df = pd.dataframe（{'x'：[1、1、1、2、2、2]、 'y'：['a'、 'b'、 'a'、 'a'、 'a'、'b']、 'z'：['c'、 'b'、 'c'、 'c'、 'c'、 'c']}））））

＃列「z」の値が「b」ではない行のみを保持するマスクを作成する
mask = df ['z']！= 'b'

＃マスクを使用してデータフレームをフィルタリングします
df = df [マスク]

＃列によるグループ 'x'
グループ化= df.groupby（ 'x'）

＃グループあたり列「y」で値「a」の平均発生を見つける
result = grouped ['y']。apply（lambda x：（x == 'a'）。平均（）））

これにより、列「x」のグループごとの列「y」に値「a」が平均的に発生する新しいPandasシリーズが提供されます。