列表中包含特定字符串类别的浮点数求和

2024-09-23 06:29:20 发布

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

如何将连接到包含字符串和浮点的列表中的特定类别字符串的浮点值相加

例如,在下面的示例中,我将如何对“CategoryA”的值求和

List = [('CategoryA', 6.03), ('CategoryA', 14.97), ('CategoryA', 1.00), ('CategoryX', 4.32), ('CategoryD', 3.60)]

Tags: 字符串示例列表类别list浮点categoryacategoryx
3条回答

您可以使用如下的求和函数来实现这一点:

sumfora = sum(x[1] for x in List if x[0] == 'CategoryA')
tot_sum = 0
for category, val in List:
   if(category == "Category A"):
      tot_sum += val

这将给出变量tot_sumList中类别A的总和

你也可以用熊猫来做这个:

>>> import pandas as pd
>>> df = pd.DataFrame(List, columns=['Category', 'Value'])
>>> df
    Category  Value
0  CategoryA   6.03
1  CategoryA  14.97
2  CategoryA   1.00
3  CategoryX   4.32
4  CategoryD   3.60
>>> df[df['Category'] == 'CategoryA']['Value'].sum()
22.0

或者如果您想查看每个类别的总和:

>>> df.groupby('Category')['Value'].sum()
Category
CategoryA    22.00
CategoryD     3.60
CategoryX     4.32
Name: Value, dtype: float64

相关问题 更多 >