используя pandas для подсчета предложений и слов внутри csv - PullRequest
1 голос
/ 08 января 2020

Я пытаюсь создать программу python, которая проходит через CSV-файл, который выбирает пользователь, и печатает общее количество предложений на основе полной остановки или новой строки, а также общее количество всех слов.

вставить файл

общее количество предложений: 3

общее количество слов: 15

общее количество слов без повторения: 12

data = pd.read_csv('dundun.csv', sep='\t')
words = data['sentences'].str.split(expand=True)
word_count = {}
for word in words:
    count = word_count.get(word, 0)
    count += 1
    word_count[word] = count
print(word_count)

Я пытаюсь этот код, но он дает неправильный вывод для подсчета слов, которые смотрит мой CSV как:

enter image description here

1 Ответ

2 голосов
/ 08 января 2020

Попробуйте использовать:

import string
nwords = data['sentences'].str.split().map(len).sum()
nsenetences = data['sentences'].count()
nunique_words = len(set([x for i in data['senetences'].str.split().apply(lambda x: [''.join([y for y in i if y not in string.punctuation]) for i in x]).tolist() for x in i]))
...