Облако слов в Python

Иметь фрейм данных:1

Используем следующий код, но получаем ValueError: нам нужно хотя бы 1 слово для построения облака слов, получилось 0.

Кто-нибудь знает, как это исправить; Я пытаюсь создать 3 облака слов, одно для всех твитов, одно для настоящих твитов и одно для поддельных твитов.

Спасибо за помощь заранее :)

df_real = df[df['label']==1]

df_fake = df[df['label']==0]

tweet_All = " ".join(review for review in df.Tweet)

tweet_real = " ".join(review for review in df_real.Tweet)

tweet_fake = " ".join(review for review in df_fake.Tweet)

fig, ax = plt.subplots(3, 1, figsize  = (30,30))
# Create and generate a word cloud image:
wordcloud_ALL = WordCloud(max_font_size=50, max_words=100, background_color = "white").generate(tweet_All)
wordcloud_ADR = WordCloud(max_font_size=50, max_words=100, background_color = "white").generate(str(tweet_real))
wordcloud_NADR = WordCloud(max_font_size=50, max_words=100, background_color = "white").generate(str(tweet_fake))

# Display the generated image:
ax[0].imshow(wordcloud_ALL, interpolation='bilinear')
ax[0].set_title('All Tweets', fontsize=30)
ax[0].axis('off')
ax[1].imshow(wordcloud_ADR, interpolation='bilinear')
ax[1].set_title('Tweets under real Class',fontsize=30)
ax[1].axis('off')
ax[2].imshow(wordcloud_NADR, interpolation='bilinear')
ax[2].set_title('Tweets under fake Class',fontsize=30)
ax[2].axis('off')
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
0
1 009
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

df['label'] похоже, имеет тип str (или объект): на вашем снимке экрана он показывает «фальшивый» в качестве записи. Может быть, df_real и df_fake пусты? Я бы попробовал показать главу df_real и df_fake.

Одним из решений может быть замена первых строк на

df_real = df[df['label']!='fake']
df_fake = df[df['label']=='fake'] 

Привет, я пытаюсь показать облако слов, связанное с реальными твитами и поддельными твитами. Вы знаете лучший способ сделать это?

user14803956 22.12.2020 21:35

Вы имеете в виду лучше с точки зрения производительности? В принципе, ваше решение должно работать. Подсказка помогла?

Manuel 22.12.2020 21:39

Да! Спасибо

user14803956 22.12.2020 22:05

Однако с точки зрения производительности два облака слов для настоящего и поддельного были очень похожи. Вы знаете, как построить частотность слова?

user14803956 22.12.2020 22:06

В созданных облаках слов слова, которые встречаются чаще, отображаются крупнее. Если этого недостаточно, есть много вариантов, в зависимости от приложения. Возможно, вы захотите отобразить наиболее распространенные слова в гистограмме? Однако есть и другие отправные точки для улучшения. Например, вы можете начать с фильтра стоп-слов.

Manuel 22.12.2020 23:36

Я уже включил стоп-слова, но я изо всех сил пытаюсь показать 10 лучших слов в гистограмме для всех твитов, настоящих твитов и подделок. И предложения?

user14803956 23.12.2020 10:49

Разделите все тексты на слова, посчитайте частоты, выберите 10 наиболее часто встречающихся и начертите их. Есть много способов приблизиться к этим шагам. Мне нравится матплотлиб!

Manuel 23.12.2020 16:53

Другие вопросы по теме