Mudanças entre as edições de "Linguagem R:Wordcloud"
Ir para navegação
Ir para pesquisar
| Linha 2: | Linha 2: | ||
=== Pacotes === | === Pacotes === | ||
| − | * | + | * stringr ([[R:Instalar pacotes]]) |
= Machado de Assis - Circulo Vicioso = | = Machado de Assis - Circulo Vicioso = | ||
| Linha 24: | Linha 24: | ||
s_dirty | s_dirty | ||
| − | #função str_splip, separa a frase por palavras | + | #função '''str_splip''', separa a frase por palavras |
#separa por palavras tendo como delimitador o espaço e enviar para variável word | #separa por palavras tendo como delimitador o espaço e enviar para variável word | ||
words <- str_split(s_dirty, fixed(' ')) | words <- str_split(s_dirty, fixed(' ')) | ||
| Linha 31: | Linha 31: | ||
words | words | ||
| − | #Problemas de | + | #Problemas de padronização e caracteres especiais |
| − | #Colocando tudo em caixa baixa | + | #Colocando tudo em caixa baixa '''str_to_lower''' |
s <- str_to_lower(s_dirty) | s <- str_to_lower(s_dirty) | ||
s | s | ||
Edição das 14h46min de 7 de junho de 2020
WordCloud
Pacotes
- stringr (R:Instalar pacotes)
Machado de Assis - Circulo Vicioso
s_dirty <- 'Bailando no ar, gemia inquieto vaga-lume: - Quem me dera que fosse aquela loura estrela, que arde no eterno azul, como uma eterna vela ! Mas a estrela, fitando a lua, com ciúme: - Pudesse eu copiar o transparente lume, que, da grega coluna á gótica janela, contemplou, suspirosa, a fronte amada e bela ! Mas a lua, fitando o sol, com azedume: - Misera ! tivesse eu aquela enorme, aquela claridade imortal, que toda a luz resume ! Mas o sol, inclinando a rutila capela: - Pesa-me esta brilhante aureola de nume... Enfara-me esta azul e desmedida umbela... Porque não nasci eu um simples vaga-lume?'
- Mostra o conteúdo da [Variável]
s_dirty
- função str_splip, separa a frase por palavras
- separa por palavras tendo como delimitador o espaço e enviar para variável word
words <- str_split(s_dirty, fixed(' '))
- Mostar a variável words
words
- Problemas de padronização e caracteres especiais
- Colocando tudo em caixa baixa str_to_lower
s <- str_to_lower(s_dirty) s
- Substitui os caractres ENTER (\\r) e NOVA LINHA (\\n) por espaço
s_clean <- str_replace_all(s,'[\\r\\n]',' ')
- mostra o conteúdo de s_clean
s_clean
- separando novamente as palavras, agora da variável limpa
words <- str_split(s_clean, fixed(' '))
words
- Removendo outros caracteres especiais de pontuação , . ? ! : com ENTER e NOVA LINHA
s_clean <- str_replace_all(s,'[\\r\\n,.?!:;]',' ') s_clean <- str_replace_all(s_clean,' ',';')
- Remove espaços em branco
- Loop - Programação
s_clean <- str_replace_all(s_clean,';;',';') s_clean <- str_replace_all(s_clean,';;',';') s_clean <- str_replace_all(s_clean,';;',';') s_clean <- str_replace_all(s_clean,';;',';') s_clean
- separando novamente as palavras, agora da variável limpa novamente
words <- str_split(c(s_clean), fixed(';'))
words
- transforma a array em uma tabela de dados e frequencia
freq <- table(words) freq
- ordena da maior frequencia para meno
freq <- sort(freq, decreasing=TRUE) freq
- Convert a lista em uma tabela
freq_t <- as.matrix(freq) colnames(freq_t) <- "Freq" freq_t freq[freq["Freq"] >1]
- Filtra dados com frequencia maior que 1
freq_t[freq_t[,1] > 1,] freq_t[freq_t$freq > 1,]
- Exportar dados para o CSV
palavras <- paste(names(freq), freq, sep=";")
cat("Palavra;Frequencia", palavras, file="d:/lixo/frequencias.csv", sep="\n")
- Mostra dados gráficos
plot(freq)
- histograma - Cluster pela frequencia
hist(freq)