Python:将列表元素的出现次数及其总计数添加到另一个列表中,避免添加重复项

时间:2016-02-05 16:51:31

标签: python list dictionary set

我有一个包含句子的文本语料库。 我希望计算每个单词的出现次数,并避免多次添加任何单词(例如,多次出现','必须添加一次以返回<?xml version="1.0" encoding="utf-8"?> <searchable xmlns:android="http://schemas.android.com/apk/res/android" android:label="@string/app_name" android:hint="@string/actionbar_products_search_hint" android:searchSuggestThreshold="0" android:searchSuggestSelection=" ?"/> 之类的内容)

所需的输出:library(ggplot) > print(output_folder) "/Users/Name/Documents/Imperial_Airlines_Flight_201%2F8" > file_name <- paste(output_folder,"/","test.pdf", sep="") pdf(file_name,width = 20, height=10) qplot(gear, mpg, data=mtcars, geom=c("boxplot", "jitter"), fill=gear, main="Mileage by Gear Number", xlab="", ylab="Miles per Gallon") dev.off() 等。 我意识到我需要使用',': 2047来避免重复。但我不知道怎么做。目前,我通过说'partner': 7, 'meetings': 7, '14': 7, 'going': 7,

来避免添加列表中已有的元素

但这不起作用,因为我在结果中多次set()

我在示例代码中避免了列表推导,以提高读者的理解力! :P

计算单词中出现的单词[i]

append only if not already in occurrences

2 个答案:

答案 0 :(得分:1)

使用collections.Counter

word_count = Counter(words)

答案 1 :(得分:0)

根据这个答案here我应该像这样使用Counter():

from collections import Counter
ctr = Counter()
    for word in words:
        ctr[word] += 1
    print(ctr)