【问题标题】:How to get count of item repetition in a list?如何获取列表中项目重复的计数?
【发布时间】:2015-06-25 18:53:29
【问题描述】:

您好,我有一个格式如下的列表

tweets= ['RT 了解 AZ 如何瞄准逃生途径以进一步 个性化乳腺癌治疗 SABCS14', '你知道安大略省有 一项针对被认为是高危女性的特殊筛查计划 乳腺癌”、“预防乳腺癌的文章食品”、“漂亮” Infinity Faith Hope 乳腺癌丝带标志皮革编织手链 乳腺癌BreastCancerAwareness']

我刚刚给出了一个列表样本,但它总共有 8183 个元素。所以现在如果我在列表中取第一项,我必须将它与列表中的所有其他元素进行比较,如果第一项出现在列表中的任何位置,我需要计算它重复了多少次。我尝试了很多可能的方法,但无法达到预期的效果。请帮助,提前谢谢。

我的代码

for x, left in enumerate(tweets1):
   print x,left
   for y, right in enumerate(tweets1):
     print y,right
     common = len(set(left) & set(right))

【问题讨论】:

  • python histogram one-liner 的可能重复项
  • @BenjyKessler 我已经看过你建议的那个,但没有帮助。希望有人给我一个准确的解决方案
  • 用字典记数或者是Counter
  • @BenjyKessler Dheerendra 谢谢大家

标签: python-2.7 twitter


【解决方案1】:

正如在 cmets 中已经指出的那样,您可以使用 collections.Counter 来执行此操作。代码将转换为如下内容:

from collections import Counter
tweets = ['RT Find out how AZ is targeting escape pathways to further personalise breastcancer treatment SABCS14',
    'Did you know Ontario has a special screening program for women considered high risk for BreastCancer',
    'Article Foods That Prevent BreastCancer',
    'PRETTY Infinity Faith Hope Breast Cancer RIBBON SIGN Leather Braided Bracelet breastcancer BreastCancerAwareness']

count = Counter(tweets)
for key in Count:
    print key, Count[key]

请注意,Counter 本质上是dict,因此无法保证元素的顺序。

【讨论】:

    猜你喜欢
    • 2015-10-05
    • 1970-01-01
    • 2020-07-14
    • 2018-07-25
    • 2016-04-21
    • 1970-01-01
    • 1970-01-01
    • 2015-03-24
    • 1970-01-01
    相关资源
    最近更新 更多