Python:如何迭代具有多个变量的行?

时间:2017-11-09 21:40:01

标签: python pandas

我有一个这样的数据框:

tags                               views

['technology', 'science', 'art']    360
['global issue', 'energy']          670
['environment', 'technology']       800
['university', 'technology']        690

我使用了一种方法来查找最重复的标记(就像这里最重复的标记是'技术')。现在我想计算该标签的总观看次数。例如,对于'技术',我应该有360 + 880 + 690的总和 我应该在与该标签相关的视图中找到行并对数字求和。

我该怎么做?

1 个答案:

答案 0 :(得分:0)

我建议使用collections.Counter

您需要迭代行和键,然后总结每个键的相应值。

这样的事情应该有效:

from collections import Counter

input_data = (
    (('technology', 'since', 'art',), 360,),
    (('global issue', 'energy',), 670,),
    (('environment', 'technology',), 800,),
    (('university', 'technology',), 690,),
)

tag_counter = Counter()
for tags, value in input_data:
    tag_counter.update({tag: value for tag in tags})

print(tag_counter)