在Python Pandas中按不同条件对项目进行计数

问题描述 投票:0回答:2

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

所以数据集就是这样;

    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个参数。

python pandas confusion-matrix
2个回答
2
投票

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

1
投票

这可能有效

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")
© www.soinside.com 2019 - 2024. All rights reserved.