Im Moment extrahiert mein Code Daten aus einem PDF & mit dem Wort Häufigkeit. Ich habe schon eine Weile versucht, es in der Reihenfolge der Häufigkeit zu arrangieren, aber ich konnte es nicht. Ich habe mir mehrere ähnliche Antworten angesehen, kann aber keine Antwort finden, die ich zur Arbeit bringen kann. Kann jemand darauf hinweisen, was ich tun muss?Wohin gehe ich falsch?
import PyPDF2
import re
pdfFileObj = open('ch8.pdf', 'rb') #Open the File
pdfReader = PyPDF2.PdfFileReader(pdfFileObj) #Read the file
frequency = {} #Create dict
print "Number of Pages %s " % pdfReader.numPages #Print Num Pages
pageObj = pdfReader.getPage(0) # Get the first page
match_pattern = re.findall(r'\b[a-z]{3,15}\b', pageObj.extractText()) #Find the text
for word in match_pattern: #Start counting the frequency
word = word.lower()
count = frequency.get(word,0)
frequency[word] = count + 1
frequency_list = frequency.keys()
for words in frequency_list:
print words, frequency[words]
Vielen Dank im Voraus.
Haben Sie versucht, 'Counter' zu verwenden? Sie können einen Zähler darauf ausführen und dann nach 'most_common' sortieren. Hier sind ein paar Informationen dazu: https://docs.python.org/2.7/library/collections.html#collections.Counter.most_common – serk
Fauler Titel (könnte für jede Frage auf SO verwendet werden!), Faule Frage. Grundlegende Fehlerbehebung: Beginnen Sie mit der einfachsten Eingabe, und sehen Sie, was Ihr Code damit macht. Wenn Sie immer noch nicht herausfinden können, was vor sich geht, geben Sie Ihre Eingabe, Ihre Ausgabe, welche Ausgabe Sie erwartet haben, was Sie versucht haben und was passiert ist, als Sie es versucht haben. –