¿Cómo han cambiado los tópicos de interés de las áreas de conocimiento durante cierto período de tiempo, por autor y por universidad?
library(quanteda)
library(tidyr)
library(dplyr)
library(tidyverse)
library(quanteda.textstats)
library(quanteda.textplots)
library(pluralize)
#Lectura de datos
datos_ues = read.csv("C:/Users/vasqu/Downloads/BD_Biomedica - BD.csv", sep=",")
tesauro = read.csv("C:/Users/vasqu/Downloads/IEEE_tesauro.csv", sep = ";")
#limpieza de datos
datos_ues$Index.keywords = tolower(datos_ues$Index.keywords)
tesauro$Area2 = str_trim(tesauro$Area2)
tesauro$Area2 = gsub(" ", "_", tesauro$Area2)
tesauro$Area2 = tolower(tesauro$Area2)
#arreglo del dataset
#separar palabrar claves "index.keywords"
datos_ues <- datos_ues %>%
mutate(Index.keywords = strsplit(as.character(Index.keywords),"-"))%>%
unnest(Index.keywords)
#Eliminar espacios en blanco y juntar palabras separados por ellos.
datos_ues$Index.keywords = str_trim(datos_ues$Index.keywords)
datos_ues$Index.keywords = gsub(" ", "_", datos_ues$Index.keywords)
datos_ues$Index.keywords = singularize(datos_ues$Index.keywords)
#dataframe con las variables necesarias
datos_totales <- data.frame(datos_ues$Universidad,datos_ues$Nombre,datos_ues$Año,
datos_ues$Index.keywords)
#Eliminar palabras innecesarias
palabras_innecesarias<-c(tm::stopwords(kind="en")," human"," female"," male"," humans"," adolescents",
" review"," prospective study"," article"," human"," young adult",
" controlled study", " priority_journal", "young_adult", " human",
"female","male","humans","adolescents", "review","prospective study",
"article","human","young adult", "adult", " adult",
"controlled study", "priority journal", "young adult", "human",
"middle aged", " middle aged", " aged", "aged", "Aged", "adolescent", " adolescent",
"clinical article", " clinical article", "Older_adults",
"Non-intrusive", "child", "chilean", "chile","clinical_article",
"controlled_study","human_experiment","normal_human",
"rat","nonhuman","animal","wistar_rat","animals","infant",
"priority_journal","middle_age", "middle_aged", "animal_experiment")
datos_totales <- datos_totales %>%
filter(!datos_ues.Index.keywords %in% palabras_innecesarias) %>%
unnest(datos_ues.Index.keywords)
#Creación del corpus
corpus_datos=corpus(datos_totales, text_field = "datos_ues.Index.keywords")
#tokenización
toks_datos = tokens(corpus_datos,remove_punct = T,remove_symbols = T,
remove_numbers = T, remove_url = T,
remove_separators = T)
#Convertir a minúsculas
toks_datos=tokens_tolower(toks_datos)
#unión de dataframe y se igualan las columnas datos_ues.Index.keywords y Area2
datos_totales <- datos_totales %>%
inner_join(tesauro, by=c("datos_ues.Index.keywords" = "Area2"))
#Transformar en corpus
corpus_data = corpus(datos_totales, text_field="datos_ues.Index.keywords")
corpus_data = tokens(corpus_data)
dfmat_datos= dfm(corpus_data)
universidad = "UdeC"
acumulado = F
if (acumulado==F){
tstat_key = textstat_keyness(dfmat_datos,target = dfmat_datos$datos_ues.Universidad == universidad)} else
{tstat_key = textstat_keyness(dfmat_datos,target = dfmat_datos$datos_ues.Universidad != universidad)}
grafico_area=textplot_keyness(tstat_key,labelsize = 4,n=10,margin = 0.6,
color = c("darkblue", "gray"))
plot(grafico_area)
universidad = "USACH"
acumulado = F
if (acumulado==F){
tstat_key = textstat_keyness(dfmat_datos,target = dfmat_datos$datos_ues.Universidad == universidad)} else
{tstat_key = textstat_keyness(dfmat_datos,target = dfmat_datos$datos_ues.Universidad != universidad)}
grafico_area=textplot_keyness(tstat_key,labelsize = 4,n=10,margin = 0.6,
color = c("deeppink", "gray"))
plot(grafico_area)
universidad = "UV"
acumulado = F
if (acumulado==F){
tstat_key = textstat_keyness(dfmat_datos,target = dfmat_datos$datos_ues.Universidad == universidad)} else
{tstat_key = textstat_keyness(dfmat_datos,target = dfmat_datos$datos_ues.Universidad != universidad)}
grafico_area=textplot_keyness(tstat_key,labelsize = 4,n=10,margin = 0.6,
color = c("orange", "gray"))
plot(grafico_area)
autor = "Figueroa Figueroa Miguel Edgardo"
acumulado = F
if (acumulado==F){
tstat_key = textstat_keyness(dfmat_datos,target = dfmat_datos$datos_ues.Nombre == autor)} else
{tstat_key = textstat_keyness(dfmat_datos,target = dfmat_datos$datos_ues.Nombre != autor)}
grafico_area=textplot_keyness(tstat_key,labelsize = 4,n=10,margin = 0.6,
color = c("mediumaquamarine", "gray"))
plot(grafico_area)