如何在Jupyter笔记本电脑Python中操作2列数据帧

2024-06-10 03:38:13 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个数据框,我正试图操纵它,以显示在黑暗和光明条件下发生的事故的严重性差异

这是具有200k条目的df

SEVERITYCODE    LIGHTCOND
0   Injury  Light
1   Damage  Dark
2   Damage  Light
3   Damage  Light
4   Injury  Light
5   Damage  Light
6   Damage  Light
7   Injury  Light
8   Damage  Light
9   Injury  Light
10  Damage  Light
11  Damage  Light
12  Damage  Dark
13  Damage  Dark
14  Injury  Dark
15  Damage  Dark
16  Injury  Light
17  Damage  Light
18  Injury  Light
19  Damage  Dark
20  Injury  Dark

我需要能够将这些数据输入到df中,以查看类似的情况,其中暗伤发生的次数在左上角框中,暗伤和损伤发生的次数在右上角框中,等等

       Injury   Damage
Dark:   10023   1132
Light:  1234    98474

如何让Python在这样的列中计数?我不确定是否需要包含图片中的数据来帮助我。1

然后我想把它做成一个堆叠的条形图,便于可视化,我想我可以通过其他教程来管理它

谢谢


Tags: 数据目的df差异条件次数lightdark
2条回答
(
    df.groupby(['LIGHTCOND', 'SEVERITYCODE']) # create a groubpy object
    .size() # aggregate by counting the rows in each group
    .unstack() # move the inner-most index level to columns, i.e. 'SEVERITYCODE'
)

试试crosstab

s = pd.crosstab(df['LIGHTCOND'], df['SEVERITYCODE'])

相关问题 更多 >