正在查找事件的总数



嘿,伙计们,我正在使用python进行数据分析。我被问到的一个问题是在我已经创建的2D列表中找到女性活动的总数,我不确定如何回答这个问题,我尝试了几种不同的方法,但我似乎不能让它工作。下面是我的2d列表和我写的代码。此外,数据应该存储在自己的列表中。

import statistics as st

data = [["1987", "male", "15-24", 21],["1987", "male", "35-54", 16], ["1987", "female", "15-24", 14], ["1987", "male", "75+", 1],
["1987", "male", "25-34", 9], ["1987", "female", "75+", 1], ["1987", "female", "35-54", 6], ["1987", "female", "25-34", 4],
["1987", "male", "55-74", 1], ["1987", "female", "5-14", 0], ["1987", "female", "55-74", 0], ["1987", "male", "5-14", 0],
["1988", "female", "75+", 2], ["1988", "male", "15-24", 17], ["1988", "male", "75+", 1], ["1988", "male", "35-54", 14],
["1988", "male", "55-74", 4], ["1988", "female", "15-24", 8], ["1988", "female", "55-74", 3], ["1988", "female", "25-34", 5],
["1988", "male", "25-34", 5], ["1988", "female", "35-54", 4], ["1988", "female", "5-14", 0], ["1988", "male", "5-14", 0],
["1989", "male", "75+", 2], ["1989", "male", "15-34", 18], ["1989", "male", "35-54", 15], ["1989", "male", "55-74", 6], 
["1989", "male", "15-24", 12], ["1989", "female", "35-54", 7], ["1989", "female", "15-24", 5], ["1989", "female", "25-34", 2],
["1989", "female", "55-74", 1], ["1989", "male", "5-14", 0], ["1989", "female", "75+", 0], ["1989", "male", "5-14", 0]]

print()
total_fem_suc = []
for instance in data:
if instance [1] == "female":
total_fem_suc.append(int(instance[3]))
print(total_fem_suc)

您当前的代码给出了所有女性自杀计数的列表:

>>> total_fem_suc
[14, 1, 6, 4, 0, 0, 2, 8, 3, 5, 4, 0, 7, 5, 2, 1, 0]

所以我认为你只是在寻找和?

>>> sum(total_fem_suc)
62

您可以使用以下方法来避免在列表中存储元素:

fem_suc_total = sum(elt[3] for elt in data if elt[1] == 'female') # 62

此外,您可以使用列表推导方法,这比Python中的传统循环更受欢迎:

fem_suc = [elt[3] for elt in data if elt[1] == 'female']
fem_suc_total = sum(fem_suc)

最新更新