在 Python Pandas 的行中按不同条件计算项目

Counting items by different conditions in rows in Python Pandas

我正在尝试创建一个实验的混淆矩阵。

所以数据集是这样的;

    Responses   Condition
3    1             R
4    1             R
6    1             R
7    1             R
8   -1             R
9   -1             N
10  -1             N
11  -1             N
12  -1             R
13   1             R

我想对四种不同的情况进行分类;我想计算每一个条件。

1 & N, -1 & N, 1 & R, -1 & R

我想计算数据框中的每一种情况。

我试过使用 .itertuples ,但我不知道如何使用 2 个参数。

这可行

import pandas as pd
df = pd.DataFrame({"Conditions":["R","R","N","N"], "Responses":[1,-1,-1,-1]})
df.groupby(["Conditions","Responses"]).apply(len).to_frame("occurrences")

IIUC

df.groupby(['Condition','Responses']).size().unstack(fill_value=0).stack()
Condition  Responses
N          -1           3
            1           0
R          -1           2
            1           5
dtype: int64

pd.crosstab(df.Condition,df.Responses)
Responses  -1   1
Condition        
N           3   0
R           2   5