0
按标识符计算每列中的值。请看例子。 (我很难解释:()python中的总和列表值
像这样:
tdata = [
('column 1', [
(1, 5), (2, 10), (3, 200)
]
),
('column 2', [
(1, 20), (2, 300), (3, 100)
]
),
('column 3', [
(1, 2), (2, 300), (3, 2000)
]
)
]
从这个数据集,我需要找到一种pythonic的方法来计算只有一个元组的子值,其中的第一个值内元组相匹配。
因此,我会做Col1中= 5 + 20 + 2,Col2中= 10 + 300 + 300,COL3 = 200 + 100 + 2000。
我可以在完成这一个真正编码密集方式像这样:
col1 = []
col2 = []
col3 = []
data = []
for (column_name, column_values) in tdata:
for (key, value) in column_values:
if key == 1:
col1.append(value)
elif key == 2:
col2.append(value)
elif key == 3:
col3.append(value)
data = [('Column 1', sum(col1)), ('Column 2', sum(col2)), ('Column 3', sum(col3))]
显然这是很多代码,而不是最有效的方法。任何有识之士将不胜感激。