import pandas as pd
import matplotlib.pyplot as plt
from PIL import Image
import numpy as np
import wordcloud
from wordcloud import WordCloud,STOPWORDS
# Read the whole text.
remarks = open(r'C:\Users\marmar\Documents\Remarks.txt').read()
#Create words over an image
mask = np.array(Image.open(r'C:\users\marmar\Documents\cloud.png'))
#set the stopwords list
stopwords= set(STOPWORDS)
#append new words to the stopwords list
new_words =open(r'C:\Users\marmar\comments.txt').read()
new_stopwords=stopwords.union(new_words)
#generate the word cloud with parameters
wc = WordCloud(background_color="white",
max_words=2000,
mask=mask,
min_font_size =12,
max_font_size=20,
relative_scaling = 0.5,
stopwords=new_stopwords,
normalize_plurals= True)
wc.generate(remarks)
plt.figure(figsize=(25,25))
plt.imshow(wc, interpolation="bilinear")
plt.axis("off")
#Show the wordcloud
plt.show()
Grundsätzlich verwende ich Python 3 (Jupyter Notebook), um eine Wordcloud mit einem tatsächlichen Cloud-Bild zu erstellen. WordCloud-Pakete haben tatsächlich ihre eigene Stopword-Funktion. Ich möchte jedoch einige Wörter in die Liste der Stoppwörter aufnehmen, die ich nicht in meiner Cloud sehen möchte. Ich habe versucht, einige Wörter in diese Textdatei einzufügen, aber ich kann die Wörter in meiner Cloud sehen. Zum Beispiel sieht die Textdatei wie folgt aus: Kunde, CSR Kunde, zufrieden, abgeschlossener ArtikelWie entferne ich Wörter aus meinem Wordcloud? (Python 3)
Wie gehe ich vor, um weitere Wörter zur Liste hinzuzufügen. Ich habe versucht, add, append, diese beiden Funktionen und sie werden nicht funktionieren.
Vielen Dank im Voraus.
Ich versuchte stopwords.add ('CSR Kommentar') und ich konnte immer noch in der Cloud sehen! – marmar
In Ihrem Aufruf des 'WordCloud'-Konstruktors sieht es so aus, als ob Sie' stopwords = stopwords' übergeben. Möchten Sie nicht "stopwords = new_stopwords" verwenden? – RagingRoosevelt
Stellen Sie außerdem sicher, dass Sie Ihre Datei mit einem Token versehen, sodass alles wortweise aufgelöst wird. Sie können etwas wie 'open (...). Read(). Split()' verwenden. – RagingRoosevelt