У меня есть словарь. Я хочу опустить слова со счетом 1 из словаря. как мне это сделать? Любая помощь? и я хочу извлечь синтаксическую модель слов? как мне это сделать?как опустить менее частые слова из словаря в python?
import codecs
file=codecs.open("Pezeshki339.txt",'r','utf8')
txt = file.read()
txt = txt[1:]
token=txt.split()
count={}
for word in token:
if word not in count:
count[word]=1
else:
count[word]+=1
for k,v in count.items():
print(k,v)
Я мог бы изменить свой код следующим образом. Но есть вопрос: как я могу создать матрицу bigram и сгладить ее с помощью метода add-one? Я ценю любые предложения, которые соответствуют моему коду.
import nltk
from collections import Counter
import codecs
with codecs.open("Pezeshki339.txt",'r','utf8') as file:
for line in file:
token=line.split()
spl = 80*len(token)/100
train = token[:int(spl)]
test = token[int(spl):]
print(len(test))
print(len(train))
cn=Counter(train)
known_words=([word for word,v in cn.items() if v>1])# removes the rare words and puts them in a list
print(known_words)
print(len(known_words))
bigram=nltk.bigrams(known_words)
frequency=nltk.FreqDist(bigram)
for f in frequency:
print(f,frequency[f])
:-) Самый быстрый пистолет на западе. –
@AmiTavory, иногда;) –
@marysd, я посмотрю в am, мозг отключается здесь на ночь. –