Показать сообщение отдельно
Старый 09.03.2024, 18:30   #1
Ципихович Эндрю
Старожил
 
Регистрация: 24.01.2011
Сообщений: 3,058
По умолчанию Составить частотность повторов

здравствуйте, код:
Код:
from collections import Counter
import re
patch = r'i:/replaces/AllDoc.txt'
with open(patch, "r", encoding='utf-8') as fi:
    t = fi.read()
cnt = Counter()
words = re.findall(r'\w+', t)
for w1, w2 in zip(words[:-1], words[1:]):
    value = f'{w1} {w2}'
    cnt[value] += 1
 
for k, v in cnt.most_common(100):
    print(f'{k} - {v}')
print('Окончен поиск 2-х одинаковых идущих подряд слов')


from collections import Counter
import re
 
patch = r'i:/replaces/AllDoc.txt'
with open(patch, "r", encoding='utf-8') as fi:
    t = fi.read()
 
cnt = Counter()
words = re.findall(r'\w+', t)
for w1, w2, w3 in zip(words[:-2], words[1:-1], words[2:]):
    value = f'{w1} {w2} {w3}'
    cnt[value] += 1
 
for k, v in cnt.most_common(100):
    print(f'{k} - {v}')
print('Окончен поиск 3-х одинаковых идущих подряд слов')
этот код, находит например:
"операций связанных с"
то есть он в оригинале убрал запятую:
"операций, связанных с"
как сделать, чтобы не убирал запятую? спасибо
Ципихович Эндрю вне форума Ответить с цитированием