Linguagens
Frequência de palavras identificadas em texto (EM13LGG703, EM13LGG704, EM13LGG705)
# Instale os pacotes necessários (caso ainda não estejam instalados)
if (!requireNamespace("plotly", quietly = TRUE)) install.packages("plotly")
if (!requireNamespace("tm", quietly = TRUE)) install.packages("tm")
if (!requireNamespace("wordcloud", quietly = TRUE)) install.packages("wordcloud")
# Carregar pacotes
library(plotly)
library(tm)
# Texto de exemplo (pode ser substituído por outro texto ou conjunto de textos)
<- c(
texto "A leitura é essencial para a compreensão do mundo.",
"Leitura amplia horizontes e desperta a criatividade.",
"A linguagem e a criatividade nos conecta e transforma o conhecimento em algo acessível."
)
# Criar um corpus
<- Corpus(VectorSource(texto))
corpus
# Pré-processamento do texto
<- tm_map(corpus, content_transformer(tolower)) # Transformar para letras minúsculas
corpus <- tm_map(corpus, removePunctuation) # Remover pontuação
corpus <- tm_map(corpus, removeNumbers) # Remover números
corpus <- tm_map(corpus, removeWords, stopwords("pt")) # Remover stopwords em português
corpus
# Criar uma matriz termo-documento
<- TermDocumentMatrix(corpus)
tdm <- as.matrix(tdm)
matriz
# Somar as frequências de palavras
<- sort(rowSums(matriz), decreasing = TRUE)
frequencias <- data.frame(
dados_frequencias Palavra = names(frequencias),
Frequencia = frequencias
)
# Criar gráfico interativo com Plotly
<- plot_ly(
grafico
dados_frequencias,x = ~Palavra,
y = ~Frequencia,
type = "bar",
text = ~paste("Frequência:", Frequencia),
hoverinfo = "text"
%>%
) layout(
title = "Frequência de Palavras no Texto",
xaxis = list(title = "Palavras"),
yaxis = list(title = "Frequência"),
showlegend = FALSE
)
# Exibir o gráfico interativo
grafico
Sugestões:
Experimente modificar o gráfico, usando/substituindo alternativamente os comandos abaixo no trecho de código: