Próbuję przyspieszyć mój projekt, aby policzyć częstotliwości słów. Mam 360 + plików tekstowych i potrzebuję uzyskać całkowitą liczbę słów i liczbę razy, gdy każde słowo z innej listy słów pojawi się. Wiem, jak to zrobić z pojedynczym plikiem tekstowym.Python - Znajdowanie częstotliwości słów listy słów w pliku tekstowym
>>> import nltk
>>> import os
>>> os.chdir("C:\Users\Cameron\Desktop\PDF-to-txt")
>>> filename="1976.03.txt"
>>> textfile=open(filename,"r")
>>> inputString=textfile.read()
>>> word_list=re.split('\s+',file(filename).read().lower())
>>> print 'Words in text:', len(word_list)
#spits out number of words in the textfile
>>> word_list.count('inflation')
#spits out number of times 'inflation' occurs in the textfile
>>>word_list.count('jobs')
>>>word_list.count('output')
Jest zbyt żmudny, aby uzyskać częstotliwości "inflacji", "zleceń", "produkcji" indywidualnych. Czy mogę umieścić te słowa na liście i znaleźć częstotliwość wszystkich słów na liście w tym samym czasie? Zasadniczo this z Python.
Przykład: Zamiast tego:
>>> word_list.count('inflation')
3
>>> word_list.count('jobs')
5
>>> word_list.count('output')
1
chcę to zrobić (wiem, że to nie jest prawdziwy kod, to co ja z prośbą o pomoc w sprawie):
>>> list1='inflation', 'jobs', 'output'
>>>word_list.count(list1)
'inflation', 'jobs', 'output'
3, 5, 1
Moja lista słów będzie miała 10-20 terminów, więc potrzebuję być w stanie wskazać Pythonowi w kierunku listy słów, aby uzyskać liczby. Byłoby również miło, jeśli wyjście mogła być kopia + wklej do arkusza kalkulacyjnego Excel ze słowami jak kolumny i częstotliwości wierszy
Przykład:
inflation, jobs, output
3, 5, 1
I wreszcie, może ktoś pomoże zautomatyzować to dla wszystkie pliki tekstowe? Myślę, że po prostu wskazuję Pythona w kierunku tego folderu i można to zrobić, licząc z nowej listy dla każdego z plików tekstowych 360+. Wydaje się dość łatwe, ale trochę utknąłem. Jakaś pomoc?
Wyjście jak to byłoby fantastyczne: nazwa_pliku1 inflacja, zatrudnienie, produkcja 3, 5, 1
Filename2
inflation, jobs, output
7, 2, 4
Filename3
inflation, jobs, output
9, 3, 5
Dzięki!
Byłem oszukiwanie z licznika przez kilka godzin teraz, i nadal nie mogę dostać. – CoS
Powyższy przykład da mi listę wszystkich unikalnych słów w moim pliku tekstowym (ponad 3000 unikalnych słów w moim przypadku). Potrzebuję tylko liczby 10-20 konkretnych słów w pliku tekstowym. – CoS
Myślę, że to zadziała na listę, wielkie dzięki! Wpatrywałem się w tę stronę Licznika godzinami haha – CoS