如何在Python中找到dataframe列中某个内容的百分比?

2024-06-01 00:22:23 发布

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

我有以下数据帧

import pandas as pd

df = pd.DataFrame({'Volcano Name': ['a', 'b', 'a', 'c', 'b', 'b', 'e', 'd', 'b', 'e', 'e'],
                   'Start Year': [1960, 1962, 1961, 1961, 1961, 1960, 1959, 1959, 1958, 1960, 1958],
                   'VEI': [0.0, 3.0,3.0,2.0, 3.0, 1.0, 1.0, 0.0, 2.0, 1.0, 2.0],
                   'Lat': [31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31]})

如何通过VEI找到每个火山的百分比?这里也有类似的问题,但不知道如何在我的系统中实现

我想我应该从这样的事情开始

df.groupby('VEI').count()

or

df.pivot_table( index=['Volcano Name','VEI'], columns='Volcano Name')

多谢各位


Tags: 数据nameimportdataframepandasdfasyear
1条回答
网友
1楼 · 发布于 2024-06-01 00:22:23

此代码段按火山名称对数据条目进行分组,汇总每个火山的VEI,并基于总和/所有VEI值计算此值的百分比。这可能并不完全是您想要的(请参阅对您的问题的评论),但该方法有望轻松地根据您的需要进行调整

sum_vei = df["VEI"].sum()
result = 100*df.groupby('Volcano Name')["VEI"].sum()/sum_vei)

相关问题 更多 >