<jupyter_start><jupyter_text>Nuvem de Palavras em Python  Bibliotecas<jupyter_code>import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from wordcloud import WordCloud, ImageColorGenerator
from PIL import Image<jupyter_output><empty_output><jupyter_text>Dados Download dos dados em: https://drive.google.com/file/d/1KHxV3dpi1X2uX5SSbQwNlNIbkpLoHOZS/view?usp=sharing<jupyter_code>df_vacs = pd.read_csv('dados_vacinas.csv', encoding = 'ISO-8859-1')
df_vacs.head()<jupyter_output><empty_output><jupyter_text>Word Cloud Padrão<jupyter_code># vamos trocar os espaços dos nomes dos imunizantes
# por um underline, para as palavras aparecerem juntas
df_vacs['Imuno'] = df_vacs['Imuno'].str.replace(' ', '_',)

# cria um dicionário com os dados, necessário para a word cloud
d = {}
for Imuno, Total in df_vacs.values:
    d[Imuno] = Total

# inicializa uma word cloud
wordcloud = WordCloud()

# gera uma wordcloud através do dicionário
wordcloud.generate_from_frequencies(frequencies = d)

plt.figure(figsize = (15, 10)) # tamanho do gráfico
plt.imshow(wordcloud, interpolation = 'bilinear') # plotagem da nuvem de palavras
plt.axis('off') # remove as bordas
plt.show() # mostra a word cloud<jupyter_output><empty_output><jupyter_text>Word Cloud Melhorada<jupyter_code># abre uma imagem e a transforma em um array do numpy
image_mask = np.array(Image.open('seringa.png'))

# inicializa uma word cloud
wordcloud = WordCloud(background_color = 'white', # cor de fundo
                      width = 1000, # largura
                      height = 500, # altura
                      mask = image_mask, # imagem utilizada
                      contour_width = 3, # espessura do contorno
                      contour_color = 'lightblue', # cor do contorno
                      colormap = 'winter') # cor das palavras

# gera uma wordcloud através do dicionário
wordcloud.generate_from_frequencies(frequencies = d)

plt.figure(figsize = (15, 10)) # tamanho do gráfico
plt.imshow(wordcloud, interpolation = 'bilinear') # plotagem da nuvem de palavras
plt.axis('off') # remove as bordas
plt.show() # mostra a word cloud<jupyter_output><empty_output><jupyter_text>Word Cloud Através de um Texto<jupyter_code># importa o texto
texto = open('texto_exemplo.txt').read()

# importa as stopwords em português
stopwords = open('stopwords.txt').read()

# transforma as stopwords em um lista
lista_stopwords = stopwords.split(' \n')

# abre uma imagem e a transforma em um array do numpy
mask_frasco = np.array(Image.open('frasco_vacina.png'))

# pega as cores da imagem acima
mask_cores = ImageColorGenerator(mask_frasco)

# inicializa uma word cloud
wordcloud = WordCloud(stopwords = lista_stopwords,
                      mask = mask_frasco, # imagem utilizada
                      background_color = 'black', # cor de fundo
                      width = 1000, # largura
                      height = 500, # altura
                      contour_width = 2, # espessura do contorno
                      contour_color = 'lightblue', # cor do contorno
                      color_func = mask_cores) # cores das palavras

# gera uma wordcloud através do texto
wordcloud.generate(texto)

plt.figure(figsize = (20, 15), facecolor = 'k') # tamanho do gráfico
plt.imshow(wordcloud, interpolation = 'bilinear') # plotagem da nuvem de palavras
plt.axis('off') # remove as bordas
plt.show() # mostra a word cloud
plt.savefig('vac.jpg')<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.09412105415580654, 'fraction_numerical': 0.011004923255140457, 'mean_word_length': 3.6738836265223274, 'pattern_counts': {'":': 0, '<': 21, '<?xml version=': 0, '>': 21, 'https://': 1, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 1, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '5', 'dir': 'jupyter-structured-clean-dedup', 'id': '382125', 'license': 'MIT', 'n_tokens_mistral': 1217, 'n_tokens_neox': 1161, 'n_words': 309, 'path': 'wordcloud-tutorial.ipynb', 'repo_name': 'diascarolina/wordcloud-tutorial', 'size': '3453'}