Construcción de la Matriz de términos en R

La matriz de términos es la base para la realización de tareas de minería de datos. La matriz de términos permitiría la visualización un histograma de frecuencias, ranking de términos de más frecuentes, para la construcción de nubes de palabras  o para aplicar un algoritmo de clasificación no jerárquica.

# Cargar el paquete TM
install.packages('NLP', dependencies = TRUE)
install.packages('tm', dependencies = TRUE)
library(NLP)
library(tm)

# Almacenar cada documento en un vector
doc1 <- c('resistencia agua frío sol ')
doc2 <- c('resistencia agua color rugoso metálico rugoso ')
doc3 <- c('corrosivo agua sol ')

# Concatenamos los tres vectores.
misdocs =c(doc1,doc2,doc3)
misdocs

# A partir de nuestro vector construimos el Corpus
corpus = Corpus(VectorSource(misdocs))
corpus

# Visualizamos de nuevo el contenido de nuestro Corpus parte por parte
corpus[[1]]$content
corpus[[2]]$content
corpus[[3]]$content

# Construcción de la matriz de términos a partir del corpus
matrizTerminos <- TermDocumentMatrix(corpus)

# Inspeccionar la matriz de terminos
inspect (matrizTerminos)

# Ajustar la dispersión al 70% No producre ningun cambio. Calculo: 3x(1-0,7) = 0,9 (aprox 1)
matrizTerminos70 <- removeSparseTerms(matrizTerminos , 0.7)
inspect (matrizTerminos70)

# Ajustar la dispersión al 60% No producre ningun cambio. Calculo: 3x(1-0,7) = 0,9 (aprox 1)
matrizTerminos60 <- removeSparseTerms(matrizTerminos , 0.6)
inspect (matrizTerminos60)

# Visualizar los términos que aparecen al menos  1 vez
findFreqTerms (matrizTerminos , lowfreq =1)
# Visualizar los términos que aparecen al menos  2 veces
findFreqTerms (matrizTerminos , lowfreq =2)
# Visualizar los términos que aparecen al menos  3 veces
findFreqTerms (matrizTerminos , lowfreq =3)

Otros artículos que pueden ser de interés:

Autor: Diego Calvo