rm(list=ls())
#install.packages("rmarkdown")
#install.packages("xfun")
#install.packages("knitr")
#install.packages("htmltools")

library(rmarkdown)
library(xfun)
library(htmltools)
library(knitr)
knitr::opts_chunk$set(echo = TRUE)
options(scipen = 100)
options(digits = 3)  
options(OutDec= ",")
options(repos = list(CRAN="http://cran.rstudio.com/"))
max.print=TRUE
knitr::opts_chunk$set(warning = FALSE, message=FALSE) 

Introducción

Desde el año 2003, la Dirección de Estudios y Estadísticas Nacionales lleva adelante diversas encuestas de percepción pública de la ciencia con el objetivo de medir el grado de conocimiento y valoración que la ciudadanía otorga a la actividad científico-tecnológica, así como evaluar el nivel de apoyo a los esfuerzos públicos orientados al desarrollo del sistema nacional de ciencia y tecnología.

En el marco de esta línea de trabajo, durante el año 2023 se realizó una encuesta con cobertura provincial, cuyo propósito fue conocer la percepción ciudadana en cada una de las jurisdicciones sobre distintos temas vinculados a la ciencia, la tecnología y la innovación. En total, se recolectaron las opiniones de 7.977 personas de 16 años y más distribuidas a lo largo de todo el país. Uno de sus ejes fue medir el valor social que le asigna la población a la ciencia, la tecnología e innovación para mejorar la calidad de vida de las personas. Siguiendo ese mismo objetivo, se indagó también de manera espontánea y cualitativa, qué asociaciones realiza la ciudadanía en torno a los términos ciencia, tecnología e innovación.

Considerando el gran volumen de datos obtenido, el objetivo de este informe se centra en documentar y describir el procedimiento metodológico implementado para su análisis. Con un enfoque centrado en la transparencia técnica, la trazabilidad de procesos y la apertura de datos, cada sección del presente documento incluye la opción de visualizar el código R correspondiente, el cual puede ser ejecutado libremente en entornos como RStudio o Google Colab, lo que facilita la replicación y adaptación del análisis.

Asimismo, los datos utilizados para este trabajo son de acceso público y se encuentran disponibles en el sitio web del Sistema Integrado de Indicadores de Ciencia y Tecnología e Innovación

A continuación, se detallan las decisiones metodológicas adoptadas para el tratamiento de los datos, con especial énfasis en el uso de técnicas de procesamiento de lenguaje natural, así como en el empleo de herramientas estadísticas y computacionales para la extracción de información cualitativa.

Cuestiones metodológicas

Al procesar grandes volúmenes de datos en formato texto muchas veces se suele tornan difícil su manipulación. La minería de texto es un proceso de extracción de información de grandes volúmenes de datos de texto el cual utiliza técnicas de procesamiento del lenguaje natural (NLP), de estadística y aprendizaje automático.

En el campo del procesamiento del lenguaje natural (NPL) existen diversas herramientas utilizadas para procesar y analizar texto de manera automática. (Python, R, Java, etc.). En este informe utilizamos el lenguaje de programación R, en el entorno R Studio.

Se aplicó el modelo de “bolsa de palabras”, el cual es un tipo de representación de texto simple, dado que ignora el orden de las palabras y la forma gramatical, pero es uno de las primeras herramientas a utilizar al preparar los datos para aplicar algoritmos más complejos de machine learning.

Previo a la construcción de las bolsas de palabras, se efectuó una limpieza de los datos que comprendió quitar artículos, preposiciones, corregir errores de ortografía, pasar todo a minúscula a fines de homogeneizar.

Se utilizaron los microdatos de la “Encuesta de Percepción pública de la ciencia Provincial 2023” generada por por la Dirección de Estudios y Estadísticas Nacionales(DEYEN) de la Subsecretaría de Ciencia y Tecnología realizada durante el año 2023.

Para mayor información sobre la encuesta consultar la pág web.

A lo largo del procesamiento, se utilizaron diversas librerías de R para poder efectuar la limpieza del texto y graficar las bolsas de palabras.

packages <- c("dplyr", 
              "haven", 
              "readr", 
              "tidytext", 
              "tidyverse",
              "tm",
              "ggplot2",
              "stringi",
              "wordcloud",
              "hunspell",
              "SemNetCleaner",
              "SnowballC",
              "RColorBrewer",
              "viridis",
              "writexl",
              "gt",
              "gtExtras",
               "devtools",
              "wordcloud2",
              "knitr",
              "kableExtra",
               "htmlwidgets","htmltools","plotly",
              "knitr","gdata","foreign",
              "stringi")

installed_packages <- packages %in% rownames(installed.packages())
if (any(installed_packages == FALSE)) {
  install.packages(packages[!installed_packages])
}

Se levanta el archivo a procesar desde el sitio https://www.argentina.gob.ar/ciencia/indicadorescti/datasets

library(readr)

seleccion <- read.csv("https://www.argentina.gob.ar/sites/default/files/2024/12/df_bolsa_palabras.csv", sep=";", header=TRUE,fileEncoding = 'latin1')
 # or "latin1", "UTF-8", "Windows-1252"
                                           
seleccion$PONDERA<-as.numeric(gsub(',', '.', gsub('[.]', '', seleccion$PONDERA)))
head(seleccion)
##    id PONDERA            P5_p          P5_2_p        P6_p   P6_2_p    P20_1_p
## 1 101   0,424 albert einstein albert einstein  invocación progreso     futuro
## 2 102   0,217    conocimiento        fenómeno     trabajo solucion    novedad
## 3 103   1,009          avance   investigación      materi   avance      nuevo
## 4 104   0,106           salud        quimicos       salud quimicos      nuevo
## 5 105   1,009             paz    tranquilidad       redes internet      crear
## 6 106   0,217      innovación      desarrollo crecimiento eficacia desarrollo
##          P20_2_p
## 1     tecnología
## 2 descubrimiento
## 3    profundidad
## 4         cambio
## 5       ejecutar
## 6       conocimy

Selección de variables

Las variables preseleccionadas de la encuesta provincial en esta tabla contempla las siguientes variables:

  • “id”: ID anonimizado de los casos de la encuesta.

  • “PONDERA”: Ponderador de los casos en función del peso poblacional por provincia.

  • “P5_p”: “Cuando hablamos de”ciencia” ¿cuál es la primera palabra que se te viene a la mente?”

  • “P5_2_p”: “¿Y la segunda?”

  • “P6_p”: “Cuando hablamos de”tecnología” ¿cuál es la primera palabra que se te viene a la mente?”

  • “P6_2_p”: “¿Y la segunda?”

  • “P20_1_p”: “Cuando hablamos de”innovación” ¿cuál es la primera palabra que se te viene a la mente?”

  • “P20_2_p”: “¿Y la segunda?”

A continuación se presenta los primeros 5 registros de la base:

seleccion %>%
 gt_preview(top_n=5,bottom_n=1)%>%
 tab_header(title = "Encuesta Provincial de Percepción Pública de la Ciencia Año 2023*",
          subtitle = "Se presentan los primeros 10 registros") %>%
 gt_theme_espn() %>% 
 opt_stylize(style = 5, color = "blue")%>%
 tab_options(table.font.size =11)%>%
 tab_options(heading.title.font.size = 14)%>%
    cols_width(
     everything() ~ px(60)
  )
Encuesta Provincial de Percepción Pública de la Ciencia Año 2023*
Se presentan los primeros 10 registros
id PONDERA P5_p P5_2_p P6_p P6_2_p P20_1_p P20_2_p
1 101 0,424 albert einstein albert einstein invocación progreso futuro tecnología
2 102 0,217 conocimiento fenómeno trabajo solucion novedad descubrimiento
3 103 1,009 avance investigación materi avance nuevo profundidad
4 104 0,106 salud quimicos salud quimicos nuevo cambio
5 105 1,009 paz tranquilidad redes internet crear ejecutar
6..7976
7977 107977 0,588 científicos política computadora técnico desarrollo información

Antes de comenzar con la corrección ortográfica, se eliminaron los posibles registros duplicados

seleccion<-unique(seleccion) 

Preprocesamiento

Esta sección se puede omitir ya que el dataset subido a la web ya tiene aplicado el preprocesamiento.

Limpieza

Para cada una de las variables se efectuó una primera limpieza suprimiendo las palabras vacías: preposiciones, los artículos, los caracteres especiales, se pasaron todas las letras a minúsculas, se quitaron los signos de puntuación y los espacios de más.

for (i in c(3,4,5,6,7,8)) { seleccion[is.na(seleccion[1:7977,i]), i] <- "" } 

 for (i in c(3,4,5,6,7,8)) {
 seleccion[1:7977,i] <- gsub("[[:cntrl:]]", " ", seleccion[1:7977,i])
 seleccion[1:7977,i] <- base::tolower(seleccion[1:7977,i])
 seleccion[1:7977,i] <- tm::removeWords(seleccion[1:7977,i], words = stopwords("spanish"))
 seleccion[1:7977,i] <- tm::removePunctuation(seleccion[1:7977,i])
 seleccion[1:7977,i] <- tm::stripWhitespace(seleccion[1:7977,i])
 }

for (i in c(3,4,5,6,7,8)) {
seleccion[1:7977,i]<-trimws(seleccion[1:7977,i], which = c("both", "left", "right"), whitespace = "[ \t\r\n]")
}

Una vez realizada la limpieza, se identificaron las palabras que estaban mal escritas utilizando la librería Hunspell tomando como base el diccionario en Español.

Generalmente en R Studio no está precargado el diccionario en español. A fines de instalarlo habría que seguir los siguientes pasos. Ir a “Tools”, 2) “Global Options”,3) “Spelling”, 4) “Main dictionary languages”, 5) seleccionar la opción de cargar diccionarios adicionales. Finalmente se carga el diccionario en español “es_ES”.

hunspell::list_dictionaries()
##  [1] "bg_BG"     "ca_ES"     "cs_CZ"     "da_DK"     "de_DE"     "de_DE_neu"
##  [7] "el_GR"     "en_AU"     "en_CA"     "en_GB"     "en_US"     "es_ES"    
## [13] "fr_FR"     "hr_HR"     "hu-HU"     "id_ID"     "it_IT"     "lt_LT"    
## [19] "lv_LV"     "nb_NO"     "nl_NL"     "pl_PL"     "pt_BR"     "pt_PT"    
## [25] "ro_RO"     "ru_RU"     "sh"        "sk_SK"     "sl_SI"     "sr"       
## [31] "sv_SE"     "uk_UA"     "vi_VN"
#dictionary("es_ES")

Identificación de palabras mal escritas (misspell)

Se generó un listado de las palabras identificadas como mal escritas (misspelled) para cada una de las variables. A continuación, se presenta como ejemplo un listado referente a la segunda palabra asociada a “innovación”.

misspelled_p5_<-as.matrix(table(unlist(unique(hunspell(seleccion[,"P5_p"],dict="es_ES"),format="text"))))

misspelled_p5_2<-as.matrix(table(unlist(unique(hunspell(seleccion[,"P5_2_p"],dict="es_ES"),format="text"))))

misspelled_p6_<-as.matrix(table(unlist(unique(hunspell(seleccion[,"P6_p"],dict="es_ES"),format="text"))))

misspelled_p6_2<-as.matrix(table(unlist(unique(hunspell(seleccion[,"P6_2_p"],dict="es_ES"),format="text"))))

misspelled_p20_1_<-as.matrix(table(unlist(unique(hunspell(seleccion[,"P20_1_p"],dict="es_ES"),format="text"))))

misspelled_p20_2<-as.data.frame(table(unlist(unique(hunspell(seleccion[,"P20_2_p"],dict="es_ES"),format="text"))))


misspelled_p20_2%>%
 gt_preview(top_n=10) %>%
  tab_header(title = "Palabras mal escritas asociadas a INNOVACIÓN",
             subtitle = "* Primeras 10 palabras") %>%
   cols_label(Var1= "Palabras mal escritas",
              Freq= "Frec.")%>%
  gt_theme_espn() %>%
  opt_stylize(style = 5, color = "blue")%>%
 tab_options(table.font.size =12,heading.title.font.size=14) 
Palabras mal escritas asociadas a INNOVACIÓN
* Primeras 10 palabras
Palabras mal escritas Frec.
1 accecibilidad 1
2 accion 1
3 aceptaciony 1
4 acequible 1
5 acer 1
6 acesible 1
7 acsecibilidad 1
8 acsesibilidad 1
9 actidad 1
10 actualisado 1
11..517
518 ytec 1

Corrección de palabras mal escritas

La librería hunspell ofrece un comando que permite reemplazar las palabras mal escritas de manera automática pero en algunos casos, ofrece más de una opción. A continuación se presentan unos ejemplos:

En el caso de la primera palabra del listado, se presentan 1 opción para reemplazar siendo la primera la certera.

hunspell_suggest("accesibilidad",dic="es_ES")
## [[1]]
## [1] "accesibilidad"

Para la segunda palabra se sugieren 6 palabras y también la primera sería la correcta

hunspell_suggest("accion",dic="es_ES")
## [[1]]
## [1] "acción"  "acciona" "accione" "acciono" "accionó" "accioné"

A fines de evitar perder precisión al reemplazar por una palabra que no sería la más adecuada, se decidió proceder de forma manual.

Para realizar las correcciones, se priorizaron las palabras que tienen mayor frecuencia dado que son las que más impactan al generar las bolsas de palabras dada la diversidad de errores de ortografía que se encontraron.

seleccion1<-seleccion

val_repl <- c('albert', 'albert ainstein','einstein',' albert','albert ',
              'eisten',' einstein','einstein ','albert ainstain','albert einsten','heinstein',
              'albert eistein')

col_repl <- c("P5_p","P5_2_p","P6_p","P6_2_p","P20_1_p","P20_2_p") 
####
seleccion1[col_repl] <- sapply(seleccion1[col_repl],  
                              function(x) replace( x, x %in% val_repl, "albert einstein"))
###
val_repl <- c('tecnológia', 'tecnologia','tegnologia',
              'tegnologia')
seleccion1[col_repl] <- sapply(seleccion1[col_repl],  
                              function(x) replace( x, x %in% val_repl, "tecnología"))
###
val_repl <- c('conocimientos', 'conociminento','conocomiento','conosimiento','conosimientos')
seleccion1[col_repl] <- sapply(seleccion1[col_repl], 
                               function(x) replace( x, x %in% val_repl, "conocimiento")) 

val_repl <- c('avances tecnología ', 'avances tecnologícis','avances tecnologicos')
seleccion1[col_repl] <- sapply(seleccion1[col_repl],  
                               function(x) replace( x, x %in% val_repl, "avances tecnológicos"))

###
val_repl <- c('avances', 'avanced','avancé',"avanze","avanses","abance",
              'avances','avanse','avanses','avanzes','avenzes','avanzados')
seleccion1[col_repl] <- sapply(seleccion1[col_repl],  
                               function(x) replace( x, x %in% val_repl, "avance"))
####
val_repl <- c('mejora','mejoras','mejorarr','mejor')
seleccion1[col_repl] <- sapply(seleccion1[col_repl],  
                               function(x) replace( x, x %in% val_repl, "mejora"))
###
val_repl <- c('descubimiento', 'descubrimentos','descubrimieto',"descubrir","descubro","descubriento")
seleccion1[col_repl] <- sapply(seleccion1[col_repl],  # Replace values in certain columns
                              function(x) replace( x, x %in% val_repl, "descubrimiento"))
###

val_repl <- c('biologia', 'biológia','biologíca',"biologícas","biológico")
seleccion1[col_repl] <- sapply(seleccion1[col_repl],  # Replace values in certain columns
                              function(x) replace( x, x %in% val_repl, "biología"))


val_repl <- c('investigacio', 'investigacióne','investigacióne',"investigaciónes","investigacio n","investigacion",
              'investigaciòn','investigadore')
seleccion1[col_repl] <- sapply(seleccion1[col_repl],  # Replace values in certain columns
                              function(x) replace( x, x %in% val_repl, "investigación"))

###
#Corrección con "str_replace".
seleccion1 <- seleccion1  %>%
  mutate(across(col_repl, str_replace, 'analisi', 'análisis')) %>%
  mutate(across(col_repl, str_replace, 'cosa', 'cosas')) %>%
  mutate(across(col_repl, str_replace, 'cosass', 'cosas')) %>%
  mutate(across(col_repl, str_replace, 'estudia', 'estudio')) %>%
  mutate(across(col_repl, str_replace, 'economia', 'economía')) %>%
  mutate(across(col_repl, str_replace, 'ecologia', 'ecología')) %>%
  mutate(across(col_repl, str_replace, 'nueva', 'nuevo')) %>%
  mutate(across(col_repl, str_replace, 'nuevas', 'nuevo')) %>%
  mutate(across(col_repl, str_replace, 'nuevos', 'nuevo')) %>%
  mutate(across(col_repl, str_replace, 'tecnologia', 'tecnología'))
##otra forma de corregir
for (i in 3:ncol(seleccion1)) {
seleccion1[,i][seleccion1[,i]=='avansada'] <- 'avanzada'
seleccion1[,i][seleccion1[,i]=='avanses'] <- 'avances'
seleccion1[,i][seleccion1[,i]=='avabazada'] <- 'avanzada'
seleccion1[,i][seleccion1[,i]=='abansada'] <- 'avanzada'
seleccion1[,i][seleccion1[,i]=='alimentos'] <- 'alimento'
seleccion1[,i][seleccion1[,i]=='alimentacion'] <- 'alimentación'
seleccion1[,i][seleccion1[,i]=='aprendisaje'] <- 'aprendizaje'

seleccion1[,i][seleccion1[,i]=='tecnologico'] <- 'tecnológico'
seleccion1[,i][seleccion1[,i]=='tecnologicos'] <- 'tecnológicos'
seleccion1[,i][seleccion1[,i]=='tecnica'] <- 'técnica'
seleccion1[,i][seleccion1[,i]=='ambitos'] <- 'ámbitos'
seleccion1[,i][seleccion1[,i]=='area'] <- 'área'
seleccion1[,i][seleccion1[,i]=='atomico'] <- 'atómico'
seleccion1[,i][seleccion1[,i]=='actualizacion'] <- 'actualización'
seleccion1[,i][seleccion1[,i]=='ambuente'] <- 'ambiente'
seleccion1[,i][seleccion1[,i]=='arsat 1'] <- 'arsat'
seleccion1[,i][seleccion1[,i]=='arsat dos'] <- 'arsat'
seleccion1[,i][seleccion1[,i]=='artificiales'] <- 'artificial'
seleccion1[,i][seleccion1[,i]=='atrasada'] <- 'atraso'
seleccion1[,i][seleccion1[,i]=='atrasadisimos'] <- 'atraso'
seleccion1[,i][seleccion1[,i]=='atrasado'] <- 'atraso'
seleccion1[,i][seleccion1[,i]=='atrasados'] <- 'atraso'
seleccion1[,i][seleccion1[,i]=='atrazado'] <- 'atraso'
seleccion1[,i][seleccion1[,i]=='atrazo'] <- 'atraso'
seleccion1[,i][seleccion1[,i]=='abances'] <- 'avance'
seleccion1[,i][seleccion1[,i]=='adelantos'] <- 'adelanto'
seleccion1[,i][seleccion1[,i]=='artificiales'] <- 'artificial'
seleccion1[,i][seleccion1[,i]=='atrasado'] <- 'atraso'
seleccion1[,i][seleccion1[,i]=='atrasadis'] <- 'atraso'
seleccion1[,i][seleccion1[,i]=='atrasada'] <- 'atraso'
seleccion1[,i][seleccion1[,i]=='abanzada'] <- 'avanzada'
seleccion1[,i][seleccion1[,i]=='abanzado'] <- 'avanzado'
seleccion1[,i][seleccion1[,i]=='aser'] <- 'hacer'
seleccion1[,i][seleccion1[,i]=='cientificosss'] <- 'científicos'
seleccion1[,i][seleccion1[,i]=='cientificos'] <- 'científicos'
seleccion1[,i][seleccion1[,i]=='científico'] <- 'científico'
seleccion1[,i][seleccion1[,i]=='sientificos'] <- 'científicos'
seleccion1[,i][seleccion1[,i]=='cientifico'] <- 'científico'
seleccion1[,i][seleccion1[,i]=='científico'] <- 'científico'
seleccion1[,i][seleccion1[,i]=='cientifico'] <- 'científico'
seleccion1[,i][seleccion1[,i]=='ciencias'] <- 'ciencia'
seleccion1[,i][seleccion1[,i]=='cientifica'] <- 'científica'
seleccion1[,i][seleccion1[,i]=='cientifico'] <- 'científico'
seleccion1[,i][seleccion1[,i]=='ciencia social'] <- 'ciencias sociales'
seleccion1[,i][seleccion1[,i]=='ciencia tecnología'] <- 'ciencias tecnológicas'
seleccion1[,i][seleccion1[,i]=='ciencia tecnológica'] <- 'ciencias tecnológicas'
seleccion1[,i][seleccion1[,i]=='ciencias medicas'] <- 'ciencias médicas'
seleccion1[,i][seleccion1[,i]=='ciencias políticas'] <- 'ciencia política'
seleccion1[,i][seleccion1[,i]=='ciencias politica'] <- 'ciencia política'
seleccion1[,i][seleccion1[,i]=='canser'] <- 'cáncer'
seleccion1[,i][seleccion1[,i]=='cancer'] <- 'cáncer'
seleccion1[,i][seleccion1[,i]=='conicec'] <- 'conicet'
seleccion1[,i][seleccion1[,i]=='conicef'] <- 'conicet'
seleccion1[,i][seleccion1[,i]=='creación'] <- 'crear'
seleccion1[,i][seleccion1[,i]=='creaciones'] <- 'crear'
seleccion1[,i][seleccion1[,i]=='creados'] <- 'crear'
seleccion1[,i][seleccion1[,i]=='creados x'] <- 'crear'
seleccion1[,i][seleccion1[,i]=='curar'] <- 'cura'
seleccion1[,i][seleccion1[,i]=='curas'] <- 'cura'
seleccion1[,i][seleccion1[,i]=='curativa'] <- 'cura'
seleccion1[,i][seleccion1[,i]=='curi'] <- 'marie curie'
seleccion1[,i][seleccion1[,i]=='curie'] <- 'marie curie'
seleccion1[,i][seleccion1[,i]=='celulas'] <- 'células'
seleccion1[,i][seleccion1[,i]=='celulare'] <- 'celular'
seleccion1[,i][seleccion1[,i]=='celulares'] <- 'celular'
seleccion1[,i][seleccion1[,i]=='creacion'] <- 'creación'
seleccion1[,i][seleccion1[,i]=='cuantica'] <- 'cuántica'
seleccion1[,i][seleccion1[,i]=='capacitacion'] <- 'capacitación'

seleccion1[,i][seleccion1[,i]=='compu'] <- 'computadora'
seleccion1[,i][seleccion1[,i]=='computadora'] <- 'computadora'
seleccion1[,i][seleccion1[,i]=='computacion'] <- 'computadora'
seleccion1[,i][seleccion1[,i]=='computadoras'] <- 'computadora'
seleccion1[,i][seleccion1[,i]=='computadoraa'] <- 'computadora'
seleccion1[,i][seleccion1[,i]=='computación'] <- 'computadora'
seleccion1[,i][seleccion1[,i]=='pc'] <- 'computadora'


seleccion1[,i][seleccion1[,i]=='conocimientos sientificos'] <- 'conocimiento científico'
seleccion1[,i][seleccion1[,i]=='conocimiento cientifico'] <- 'conocimiento científico'
seleccion1[,i][seleccion1[,i]=='conocimientos sistemáticas'] <- 'conocimiento sistemático'
seleccion1[,i][seleccion1[,i]=='conocimientos sistematicos'] <- 'conocimiento sistemático'
seleccion1[,i][seleccion1[,i]=='conocimientos obtiene'] <- 'conocimientos obtenidos'
seleccion1[,i][seleccion1[,i]=='desarollo'] <- 'desarrollo'
seleccion1[,i][seleccion1[,i]=='desarrollar'] <- 'desarrollo'
seleccion1[,i][seleccion1[,i]=='desarrolló'] <- 'desarrollo'
seleccion1[,i][seleccion1[,i]=='desarroyo'] <- 'desarrollo'
seleccion1[,i][seleccion1[,i]=='educa'] <- 'educación'
seleccion1[,i][seleccion1[,i]=='educacio'] <- 'educación'
seleccion1[,i][seleccion1[,i]=='educaciom'] <- 'educación'
seleccion1[,i][seleccion1[,i]=='educar'] <- 'educación'
seleccion1[,i][seleccion1[,i]=='educativa'] <- 'educación'
seleccion1[,i][seleccion1[,i]=='experimentos'] <- 'experimento'
seleccion1[,i][seleccion1[,i]=='energia'] <- 'energía'
seleccion1[,i][seleccion1[,i]=='energías'] <- 'energía'
seleccion1[,i][seleccion1[,i]=='enfermedades'] <- 'enfermedad'
seleccion1[,i][seleccion1[,i]=='espacios'] <- 'espacio'
seleccion1[,i][seleccion1[,i]=='estudió'] <- 'espacio'
seleccion1[,i][seleccion1[,i]=='estudiar'] <- 'estudiar'
seleccion1[,i][seleccion1[,i]=='estudios'] <- 'estudiar'
seleccion1[,i][seleccion1[,i]=='estudiós'] <- 'estudiar'
seleccion1[,i][seleccion1[,i]=='economica'] <- 'económica'
seleccion1[,i][seleccion1[,i]=='electronica'] <- 'electrónica'
seleccion1[,i][seleccion1[,i]=='maquinas'] <- 'máquina'
seleccion1[,i][seleccion1[,i]=='máquinas'] <- 'máquina'
seleccion1[,i][seleccion1[,i]=='quimica'] <- 'química'
seleccion1[,i][seleccion1[,i]=='electronica'] <- 'electrónica'

seleccion1[,i][seleccion1[,i]=='educacion'] <- 'educación'
seleccion1[,i][seleccion1[,i]=='evolucion'] <- 'evolución'
seleccion1[,i][seleccion1[,i]=='esperomentos'] <- 'experimento'
seleccion1[,i][seleccion1[,i]=='fisica'] <- 'física'
seleccion1[,i][seleccion1[,i]=='programacion'] <- 'programación'
seleccion1[,i][seleccion1[,i]=='prpgramación'] <- 'programación'
seleccion1[,i][seleccion1[,i]=='informacion'] <- 'información'
seleccion1[,i][seleccion1[,i]=='informaticos'] <- 'informáticos'
seleccion1[,i][seleccion1[,i]=='investigacion'] <- 'investigación'
seleccion1[,i][seleccion1[,i]=='informatica'] <- 'informática'
seleccion1[,i][seleccion1[,i]=='innovacion'] <- 'innovación'
seleccion1[,i][seleccion1[,i]=='inteligenciaartificial'] <- 'inteligencia artificial'
seleccion1[,i][seleccion1[,i]=='inovasion'] <- 'innovación'
seleccion1[,i][seleccion1[,i]=='innovar'] <- 'innovación'
seleccion1[,i][seleccion1[,i]=='inovar'] <- 'innovación'
seleccion1[,i][seleccion1[,i]=='ia'] <- 'inteligencia artificial'
seleccion1[,i][seleccion1[,i]=='robotica'] <- 'robótica'
seleccion1[,i][seleccion1[,i]=='robot'] <- 'robots'
seleccion1[,i][seleccion1[,i]=='rede'] <- 'redes'
seleccion1[,i][seleccion1[,i]=='salut'] <- 'salud'
seleccion1[,i][seleccion1[,i]=='salu'] <- 'salud'
seleccion1[,i][seleccion1[,i]=='sociale'] <- 'sociales'
seleccion1[,i][seleccion1[,i]=='naturale'] <- 'naturales'
seleccion1[,i][seleccion1[,i]=='nuevas'] <- 'nuevo'
seleccion1[,i][seleccion1[,i]=='nuevos'] <- 'nuevo'
seleccion1[,i][seleccion1[,i]=='nueva'] <- 'nuevo'
seleccion1[,i][seleccion1[,i]=='mejoras'] <- 'mejora'
seleccion1[,i][seleccion1[,i]=='mejorar'] <- 'mejora'
seleccion1[,i][seleccion1[,i]=='medicins'] <- 'medicina'
seleccion1[,i][seleccion1[,i]=='hospitale'] <- 'hospitales'
seleccion1[,i][seleccion1[,i]=='viene'] <- ''
seleccion1[,i][seleccion1[,i]=='ytabajo'] <- 'trabajo'
seleccion1[,i][seleccion1[,i]=='medica'] <- 'médica'
seleccion1[,i][seleccion1[,i]=='tecnologia'] <- 'tecnología'
seleccion1[,i][seleccion1[,i]=='comunicacion'] <- 'comunicación'
seleccion1[,i][seleccion1[,i]=='robots'] <- 'robótica'
seleccion1[,i][seleccion1[,i]=='robot'] <- 'robótica'
seleccion1[,i][seleccion1[,i]=='utn'] <- 'UTN'
seleccion1[,i][seleccion1[,i]=='educacion'] <- 'educación'
seleccion1[,i][seleccion1[,i]=='fibra optica'] <- 'fibra óptica'
seleccion1[,i][seleccion1[,i]=='electrinica'] <- 'electrónica'
seleccion1[,i][seleccion1[,i]=='ciencie yecnolojicas'] <- 'ciencias tecnológicas'
seleccion1[,i][seleccion1[,i]=='medioambiente'] <- 'medio ambiente'
seleccion1[,i][seleccion1[,i]=='descubrimientos'] <- 'descubrimiento'

}

Se homogeneizan las no respuestas en una sola categoría

## se reemplaza No se/ Ns/Nc por 'missing'

col_repl <- c("P5_p","P5_2_p","P6_p","P6_2_p","P20_1_p","P20_2_p") 

val_repl <- c('nose','no se','No Se','No Sé','No lo se','No lo sé','ninguna',
              'ninguno',' ','  ','    ','', NA, NaN,'noce','nosé','ns','nse','nsnc','nsnc','Ns/Nc','nc','x','¿','×') 

# Replace all matching values with NA
seleccion1[col_repl] <- lapply(seleccion1[col_repl], function(x) {
  # Trim leading/trailing spaces
  x <- trimws(x)
  x[x %in% val_repl] <- NA
  return(x)
})

Tablas de frecuencias

Las tablas de frecuencia permiten analizar qué respuestas son más recurrentes teniendo en cuenta el ponderador de la encuesta.

Tabla general

Si bien en las preguntas a analizar de la encuesta se solicitaba completar el campo con una sola palabra, en muchos casos los encuestados completaron con más de 1 palabra.

A continuación se presentan la tabla de frecuencias:

Total país

n_p5_<-(as.tibble(stri_count_words(seleccion1$P5_p)))
n_p5_<-n_p5_%>% rename(n_p5_ = value)
n_p5_$n_p5_[n_p5_$n_p5_>=3 ] <- "Tres o más"
#n_p5_$P5_P<-seleccion1$P5_p

n_p5_2<-(as.tibble(stri_count_words(seleccion1$P5_2_p)))
n_p5_2<-n_p5_2%>% rename(n_p5_2 = value)
n_p5_2$n_p5_2[n_p5_2$n_p5_2>=3 ] <- "Tres o más"
#n_p5_2$P5_2_p<-seleccion1$P5_2_p


n_p6_<-(as.tibble(stri_count_words(seleccion1$P6_p)))
n_p6_<-n_p6_%>% rename(n_p6_ = value)
n_p6_$n_p6_[n_p6_$n_p6_>=3 ] <- "Tres o más"

n_p6_2<-(as.tibble(stri_count_words(seleccion1$P6_2_p)))
n_p6_2<-n_p6_2%>% rename(n_p6_2 = value)
n_p6_2$n_p6_2[n_p6_2$n_p6_2>=3 ] <- "Tres o más"

n_p20_1<-(as.tibble(stri_count_words(seleccion1$P20_1_p)))
n_p20_1<-n_p20_1%>% rename(n_p20_1 = value)
n_p20_1$n_p20_1[n_p20_1$n_p20_1>=3 ] <- "Tres o más"
#n_p20_1$P20_1_p<-seleccion1$P20_1_p

n_p20_2<-(as.tibble(stri_count_words(seleccion1$P20_2_p)))
n_p20_2<-n_p20_2%>% rename(n_p20_2 = value)
n_p20_2$n_p20_2[n_p20_2$n_p20_2>=3 ] <- "Tres o más"
#n_p20_2$P20_2_p<-seleccion1$P20_2_p


seleccion1<-cbind(seleccion1,n_p5_,n_p5_2,n_p6_,n_p6_2,n_p20_1,n_p20_2)
n_p5_<-seleccion1%>%
  dplyr::group_by(n_p5_)%>%
  dplyr::summarise(freq_cantp5_=sum(PONDERA))%>%
  rename("Cantidad de palabras"= n_p5_,
    )

n_p5_2<-seleccion1%>%
  dplyr::group_by(n_p5_2) %>%
  dplyr::summarise(freq_cantp5_2=sum(PONDERA))%>%
  rename("Cantidad de palabras"= n_p5_2,
    )

n_p6_<-seleccion1%>%
  dplyr::group_by(n_p6_) %>%
  dplyr::summarise(freq_cantp6_1=sum(PONDERA))%>%
  rename("Cantidad de palabras"= n_p6_,
    )

n_p6_2<-seleccion1%>%
  dplyr::group_by(n_p6_2) %>%
  dplyr::summarise(freq_cantp6_2=sum(PONDERA))%>%
  rename("Cantidad de palabras"= n_p6_2,
    )

n_p20_1<-seleccion1%>%
  dplyr::group_by(n_p20_1) %>%
  dplyr::summarise(freq_cantp20_1=sum(PONDERA))%>%
  rename("Cantidad de palabras"= n_p20_1,
    )

n_p20_2<-seleccion1%>%
  dplyr::group_by(n_p20_2) %>%
  dplyr::summarise(freq_cantp20_2=sum(PONDERA))%>%
  rename(
    "Cantidad de palabras"= n_p20_2,
    )

df_list <- cbind(n_p5_, n_p5_2, n_p6_, n_p6_2, n_p20_1, n_p20_2)
df_list<-df_list[,c(1,2,4,6,8,10,12)]  
##Tabla
df_list %>% 
gt() %>%
  tab_header(title = "Cantidad de palabras por respuesta") %>%
   cols_label(freq_cantp5_= "Ciencia 1ra",
              freq_cantp5_2= "Ciencia 2da",
              freq_cantp6_1= "Tecnología 1ra",
              freq_cantp6_2= "Tecnología 2da",
              freq_cantp20_1= "Innovación 1ra",
              freq_cantp20_2= "Innovación 2da")%>%
  gt_theme_espn() %>%
  opt_stylize(style = 5, color = "blue")%>%
 tab_options(table.font.size =12)%>% 
 tab_options(heading.title.font.size = 14)%>%
  fmt_integer(use_seps = FALSE)
Cantidad de palabras por respuesta
Cantidad de palabras Ciencia 1ra Ciencia 2da Tecnología 1ra Tecnología 2da Innovación 1ra Innovación 2da
1 7247 7345 7312 7287 6820 6827
2 553 436 526 520 749 623
Tres o más 134 126 123 138 222 297
NA 42 71 16 32 187 229

En general, tanto para la primera y segunda mención de cada palabra, las personas en su mayoría respondieron una sola palabra y en segundo lugar dos.

El porcentaje de no respuesta se destaca en la segunda mención de cada palabra, especialmente para la palabra “innovación”.

Ciencia

Primera palabra que asocian

Total país

Para la pregunta en la cual se pide que se indique la primera palabra que asocian a ciencia, se observa que las primeras 30 palabras explican el 60% de las menciones siendo las principales palabras “investigación”, “medicina”, “salud” y “tecnología”.

Total país: ¿Qué otra palabra asocia a CIENCIA? - Tabla de Frecuencias
* Primeros 60 registros
Ciencia (2da palabra asociada) Frec. Frec. relativa % Frec. acumulada relativa %
1 investigación 610 7.65% 7,65%
2 medicina 454 5.69% 13,34%
3 salud 448 5.61% 18,95%
4 tecnología 410 5.14% 24,09%
5 conocimiento 334 4.18% 28,28%
6 avance 258 3.23% 31,51%
7 estudio 226 2.84% 34,34%
8 futuro 157 1.96% 36,31%
9 experimento 152 1.91% 38,22%
10 progreso 149 1.87% 40,09%
11 vacunas 146 1.83% 41,92%
12 innovación 144 1.81% 43,73%
13 descubrimiento 130 1.63% 45,36%
14 laboratorio 127 1.59% 46,95%
15 conicet 121 1.51% 48,46%
16 química 116 1.45% 49,91%
17 evolución 93 1.16% 51,07%
18 inteligencia artificial 92 1.16% 52,23%
19 naturaleza 85 1.06% 53,29%
20 científico 78 0.98% 54,27%
21 desarrollo 78 0.97% 55,24%
22 estudior 76 0.96% 56,20%
23 educación 64 0.80% 57,00%
24 adelanto 64 0.80% 57,80%
25 física 62 0.78% 58,58%
26 biología 60 0.76% 59,34%
27 robótica 57 0.72% 60,06%
28 científicos 56 0.70% 60,76%
29 vida 55 0.69% 61,44%
30 inteligencia 52 0.65% 62,10%
31 saber 50 0.62% 62,72%
32 investigar 44 0.55% 63,27%
33 Ns/Nc 42 0.53% 63,80%
34 albert einstein 42 0.53% 64,33%
35 espacio 40 0.50% 64,83%
36 naturales 36 0.45% 65,28%
37 sociales 35 0.44% 65,72%
38 universo 35 0.43% 66,16%
39 informática 30 0.38% 66,53%
40 crear 29 0.36% 66,90%
41 cáncer 29 0.36% 67,26%
42 comunicación 25 0.32% 67,58%
43 atraso 24 0.30% 67,88%
44 ciencia 24 0.30% 68,18%
45 internet 23 0.29% 68,47%
46 enfermedad 22 0.28% 68,75%
47 inventos 22 0.28% 69,02%
48 energía 21 0.27% 69,29%
49 favaloro 21 0.27% 69,56%
50 computadora 20 0.26% 69,82%
51 arsat 20 0.25% 70,06%
52 universidad 18 0.22% 70,29%
53 medio ambiente 18 0.22% 70,51%
54 vacuna 17 0.22% 70,73%
55 microscopio 17 0.22% 70,94%
56 medicamentos 17 0.21% 71,16%
57 información 16 0.20% 71,36%
58 células 16 0.20% 71,56%
59 importante 15 0.19% 71,75%
60 electrónica 15 0.19% 71,93%
61..1436 % %
1437 Total general 7,977 100.00% 100,00%

Segunda palabra que asocian

Total país

Se observa que las primeras 30 palabras explican el 42% de las menciones, mostrando una distribución con mayor dispersión. Las principales palabras fueron “tecnología”, “salud”, “investigación” y “avance”.

#Frec.s
count_words_p5_2<-seleccion1%>%
  dplyr::group_by(P5_2_p)%>%
  dplyr::summarise(freq=sum(PONDERA,na.rm=TRUE))%>%
  arrange(desc(freq))

  count_words_p5_2<-count_words_p5_2%>%
  mutate(freqrel=freq/sum(freq)*100)%>%
  mutate(freqcum = cumsum(freq))%>%
  mutate(freqcumrel = (freqcum/sum(freq))*100) %>%
            bind_rows(summarise(., across(c(freq,freqrel), sum),
                                   across(where(is.character), ~'Total general'),
                                   across(c(freqcum,freqcumrel), last)))

                                
count_words_p5_2$P5_2_p[which(is.na(count_words_p5_2$P5_2_p))] <- 'Ns/Nc'
                                                                                                
#Vista preliminar tabla
count_words_p5_2%>%
  select(P5_2_p,freq,freqrel,freqcumrel)%>%

  gt_preview(top_n=60) %>%
   tab_header(title = "Total país: ¿Qué otra palabra asocia a CIENCIA?
 - Tabla de Frecuencias",
              subtitle = "* Primeros 60 registros") %>%
  cols_label(P5_2_p= "Ciencia (2da palabra asociada)",
             freq= "Frec.",
             freqrel="Frec. relativa %",
             freqcumrel= "Frec. acumulada relativa %")%>%
  gt_theme_espn() %>%
  opt_stylize(style = 5, color = "blue") %>%
  fmt_symbol_first(column = freqrel, suffix = "%")%>%
  fmt_symbol_first(column = freqcumrel, suffix = "%")%>%
 tab_options(table.font.size =12)%>% 
 tab_options(heading.title.font.size = 14)%>%
    fmt_integer(columns = freq, force_sign = FALSE)%>%
    fmt_number(columns = freqrel, decimals=2)
Total país: ¿Qué otra palabra asocia a CIENCIA? - Tabla de Frecuencias
* Primeros 60 registros
Ciencia (2da palabra asociada) Frec. Frec. relativa % Frec. acumulada relativa %
1 tecnología 484 6.07% 6,07%
2 salud 273 3.42% 9,49%
3 investigación 262 3.28% 12,77%
4 avance 228 2.86% 15,63%
5 medicina 211 2.64% 18,28%
6 conocimiento 164 2.06% 20,34%
7 futuro 156 1.95% 22,29%
8 estudio 150 1.88% 24,17%
9 desarrollo 139 1.75% 25,92%
10 laboratorio 116 1.46% 27,37%
11 progreso 114 1.42% 28,80%
12 descubrimiento 113 1.41% 30,21%
13 experimento 103 1.30% 31,51%
14 educación 83 1.04% 32,55%
15 innovación 80 1.01% 33,56%
16 Ns/Nc 71 0.89% 34,44%
17 naturaleza 66 0.82% 35,26%
18 química 64 0.80% 36,06%
19 bienestar 61 0.76% 36,82%
20 robótica 57 0.71% 37,53%
21 física 55 0.69% 38,22%
22 inteligencia 55 0.69% 38,91%
23 científicos 54 0.68% 39,59%
24 estudior 54 0.67% 40,26%
25 evolución 52 0.65% 40,92%
26 científico 51 0.64% 41,56%
27 biología 51 0.64% 42,20%
28 saber 50 0.62% 42,82%
29 sociales 49 0.61% 43,43%
30 vacunas 47 0.59% 44,02%
31 computadora 46 0.58% 44,60%
32 vida 43 0.54% 45,13%
33 economía 38 0.47% 45,61%
34 naturales 37 0.46% 46,07%
35 medio ambiente 37 0.46% 46,53%
36 crear 36 0.45% 46,98%
37 información 35 0.44% 47,42%
38 crecimiento 35 0.44% 47,86%
39 adelanto 34 0.42% 48,28%
40 mejora 33 0.41% 48,69%
41 ecología 31 0.39% 49,08%
42 ambiente 31 0.39% 49,48%
43 universidad 30 0.38% 49,85%
44 internet 30 0.37% 50,22%
45 inventos 30 0.37% 50,59%
46 enfermedad 30 0.37% 50,97%
47 ciencia 27 0.34% 51,30%
48 espacio 27 0.33% 51,64%
49 medicamentos 26 0.33% 51,97%
50 conicet 26 0.32% 52,29%
51 aprendizaje 25 0.32% 52,61%
52 nuclear 25 0.32% 52,92%
53 aprender 24 0.30% 53,23%
54 análisiss 23 0.29% 53,52%
55 politica 22 0.28% 53,80%
56 remedios 22 0.28% 54,08%
57 trabajo 22 0.27% 54,36%
58 mundo 22 0.27% 54,63%
59 matemáticas 22 0.27% 54,90%
60 laboratorios 20 0.26% 55,15%
61..1907 % %
1908 Total general 7,977 100.00% 100,00%

Gráfico dispersión

En este tipo de gráfico de dispersión se puede observar la distribución de las palabras asociadas a ciencia, donde el eje “x” indica la frecuencia relativa de determinada palabra de la primera mención, mientras que el eje “y” de la segunda mención.

En los gráficos se presentan aquellas palabras que fueron mencionadas tanto como primera y segunda opción.

Permite observar que las palabras más frecuentes están concentradas en la parte derecha superior del cuadrante del gráfico.

Total país

a<-merge(count_words_p5_,count_words_p5_2,by.x='P5_p',by.y='P5_2_p',all=TRUE)
a<-a[,c("P5_p","freqrel.x","freqrel.y")]
a<-subset(a, freqrel.x!=100)
a[is.na(a)] <- 0

fig <- plot_ly(data = a, x = ~freqrel.x, y = ~freqrel.y, 
               text = ~P5_p)

fig <- fig %>% layout(
  title = list(
    text = 'Palabras asociadas a "ciencia"',
    xanchor="right",
    yanchor = "top",  # Anchors title to the top
    x=0.5,
    y = 1,          
    font = t          
  ),
  xaxis = list(title = 'Primera palabra - frec. relativa %'),
  yaxis = list(title = 'Segunda palabra - frec. relativa %'),
  plot_bgcolor = "#e5ecf6"
)





fig<-fig%>%layout(xaxis=list(hoverformat = '.2f'),
                    yaxis=list(hoverformat = '.2f'))
fig
rm(a)

Tecnología

Primera palabra que asocian

Total país

Se observa que las 30 palabras con más frecuencia representan el 53% de las menciones. Las principales palabras mencionadas fueron “computadora/computación”, “avance”, “Celular”, e “Internet”.

count_words_p6_<-seleccion1%>%
  dplyr::group_by(P6_p)%>%
    dplyr::summarise(freq=sum(PONDERA,na.rm=TRUE))%>%
  arrange(desc(freq))%>%
  mutate(freqrel=freq/sum(freq)*100)%>%
  mutate(freqcum = cumsum(freq))%>%
  mutate(freqcumrel = (freqcum/sum(freq))*100) %>%
            bind_rows(summarise(., across(c(freq,freqrel), sum),
                                   across(where(is.character), ~'Total general'),
                                   across(c(freqcum,freqcumrel), last)                                                            ))

count_words_p6_$P6_p[which(is.na(count_words_p6_$P6_p))] <- 'Ns/Nc'

count_words_p6_%>%
    select(P6_p,freq,freqrel,freqcumrel)%>%
  gt_preview(top_n=60) %>%
   tab_header(title = "Total país: ¿Qué palabra asocia a Tecnología?
              - Tabla de Frecuencias",
             subtitle = "* Primeros 60 registros") %>%
   cols_label(P6_p= "Tecnología, 1ª palabra asociada",
             freq= "Frec.",
             freqrel="Frec. relativa %",
             #freqcum= "Frec. acumulada" ,
             freqcumrel= "Frec. acumulada relativa %")%>%
   gt_theme_espn() %>%
   opt_stylize(style = 5, color = "blue") %>%
   fmt_symbol_first(column = freqrel, suffix = "%")%>%
   fmt_symbol_first(column = freqcumrel, suffix = "%")%>%
 tab_options(table.font.size =12)%>% 
 tab_options(heading.title.font.size = 14)%>%
    fmt_integer(columns = freq, force_sign = FALSE)%>%
    fmt_number(columns = freqrel, decimals=2)
Total país: ¿Qué palabra asocia a Tecnología? - Tabla de Frecuencias
* Primeros 60 registros
Tecnología, 1ª palabra asociada Frec. Frec. relativa % Frec. acumulada relativa %
1 computadora 578 7.24% 7,24%
2 avance 512 6.42% 13,67%
3 celular 421 5.28% 18,95%
4 internet 335 4.20% 23,14%
5 futuro 319 3.99% 27,14%
6 robótica 288 3.61% 30,75%
7 innovación 216 2.71% 33,45%
8 informática 150 1.88% 35,34%
9 inteligencia artificial 124 1.55% 36,89%
10 progreso 117 1.47% 38,35%
11 desarrollo 108 1.35% 39,71%
12 ciencia 106 1.32% 41,03%
13 electrónica 105 1.31% 42,34%
14 adelanto 101 1.26% 43,60%
15 comunicación 100 1.25% 44,85%
16 inteligencia 78 0.98% 45,83%
17 máquina 70 0.88% 46,72%
18 conocimiento 68 0.85% 47,57%
19 crecimiento 57 0.72% 48,29%
20 nuevo 55 0.69% 48,98%
21 evolución 54 0.68% 49,66%
22 salud 50 0.63% 50,29%
23 información 50 0.62% 50,92%
24 redes 49 0.61% 51,52%
25 trabajo 46 0.57% 52,10%
26 industria 44 0.55% 52,65%
27 avanzada 41 0.52% 53,17%
28 técnica 41 0.51% 53,68%
29 programación 39 0.49% 54,17%
30 tecnología 39 0.48% 54,65%
31 atraso 39 0.48% 55,13%
32 actualidad 38 0.48% 55,61%
33 investigación 37 0.47% 56,08%
34 educación 36 0.45% 56,53%
35 comodidad 36 0.45% 56,98%
36 herramientas 35 0.43% 57,41%
37 avanzar 33 0.41% 57,82%
38 teléfono 31 0.39% 58,21%
39 recursos 29 0.36% 58,57%
40 mejora 27 0.34% 58,91%
41 actualización 26 0.33% 59,24%
42 inventos 25 0.32% 59,56%
43 sistemas 23 0.29% 59,85%
44 aparatos 23 0.29% 60,14%
45 medicina 22 0.28% 60,42%
46 arsat 22 0.28% 60,69%
47 digital 22 0.27% 60,96%
48 maquinaria 21 0.26% 61,23%
49 industrial 21 0.26% 61,49%
50 productos 21 0.26% 61,75%
51 comunicaciones 19 0.24% 61,99%
52 herramienta 19 0.24% 62,23%
53 crear 19 0.24% 62,46%
54 novedad 19 0.24% 62,70%
55 facilidad 18 0.23% 62,93%
56 redes sociales 18 0.23% 63,15%
57 utilidad 17 0.22% 63,37%
58 inta 17 0.22% 63,59%
59 electricidad 17 0.22% 63,80%
60 electrodomésticos 17 0.21% 64,02%
61..1559 % %
1560 Total general 7,977 100.00% 100,00%

Segunda palabra que asocian

Total país

Cuando se pregunta por la segunda palabra asociada a “tecnología” se observa que las 30 palabras con más frecuencia explican sólo el 40% de las menciones. En este caso las principales palabras fueron “avance”, “computadora/computación”, “futuro”, “celular”, entre otras.

count_words_p6_2<-seleccion1%>%
  dplyr::group_by(P6_2_p)%>%
  dplyr::summarise(freq=sum(PONDERA,na.rm=TRUE))%>%
  arrange(desc(freq))%>%
  mutate(freqrel=freq/sum(freq)*100)%>%
  mutate(freqcum = cumsum(freq))%>%
  mutate(freqcumrel = (freqcum/sum(freq))*100) %>%
            bind_rows(summarise(., across(c(freq,freqrel), sum),
                                   across(where(is.character), ~'Total general'),
                                   across(c(freqcum,freqcumrel), last)
                                                                ))

count_words_p6_2$P6_2_p[which(is.na(count_words_p6_2$P6_2_p))] <- 'Ns/Nc'



count_words_p6_2%>%
      select(P6_2_p,freq,freqrel,freqcumrel)%>%

  gt_preview(top_n=60) %>%
  tab_header(title = "Total país: ¿Qué otra palabra asocia a Tecnología?
- Tabla de Frecuencias",
             subtitle = "* Primeros 60 registros") %>%
  cols_label(P6_2_p= "Tecnología, 2ª palabra asociada",
             freq= "Frec.",
             freqrel="Frec. relativa %",
             #freqcum= "Frec. acumulada" ,
             freqcumrel= "Frec. acumulada relativa %")%>%
  gt_theme_espn() %>%
  opt_stylize(style = 5, color = "blue") %>%
  fmt_symbol_first(column = freqrel, suffix = "%")%>%
  fmt_symbol_first(column = freqcumrel, suffix = "%")%>%
  opt_all_caps()%>%
 tab_options(table.font.size =12)%>% 
 tab_options(heading.title.font.size = 14)%>%
    fmt_integer(columns = freq, force_sign = FALSE)%>%
    fmt_number(columns = freqrel, decimals=2) 
Total país: ¿Qué otra palabra asocia a Tecnología? - Tabla de Frecuencias
* Primeros 60 registros
Tecnología, 2ª palabra asociada Frec. Frec. relativa % Frec. acumulada relativa %
1 computadora 377 4.73% 4,73%
2 avance 344 4.32% 9,04%
3 futuro 298 3.73% 12,77%
4 celular 271 3.40% 16,17%
5 robótica 224 2.81% 18,98%
6 internet 205 2.58% 21,55%
7 inteligencia artificial 128 1.61% 23,16%
8 innovación 116 1.45% 24,61%
9 progreso 114 1.43% 26,04%
10 desarrollo 107 1.34% 27,37%
11 ciencia 77 0.96% 28,33%
12 comunicación 75 0.94% 29,28%
13 crecimiento 69 0.87% 30,14%
14 mejora 67 0.84% 30,98%
15 informática 64 0.81% 31,79%
16 salud 64 0.80% 32,59%
17 crear 64 0.80% 33,39%
18 medicina 60 0.75% 34,14%
19 máquina 60 0.75% 34,89%
20 conocimiento 59 0.74% 35,63%
21 trabajo 58 0.73% 36,36%
22 educación 57 0.72% 37,08%
23 información 56 0.71% 37,79%
24 adelanto 56 0.70% 38,49%
25 bienestar 52 0.65% 39,14%
26 investigación 50 0.62% 39,77%
27 inteligencia 49 0.61% 40,38%
28 redes 46 0.58% 40,96%
29 evolución 41 0.51% 41,47%
30 aparatos 38 0.48% 41,95%
31 artificial 36 0.46% 42,41%
32 actualidad 36 0.45% 42,86%
33 electrónica 36 0.45% 43,31%
34 comodidad 35 0.44% 43,75%
35 herramientas 35 0.44% 44,19%
36 wifi 33 0.42% 44,60%
37 digital 33 0.41% 45,01%
38 Ns/Nc 32 0.40% 45,41%
39 programación 31 0.39% 45,81%
40 tecnología 31 0.38% 46,19%
41 estudior 30 0.38% 46,57%
42 facilidad 29 0.37% 46,94%
43 industria 29 0.36% 47,30%
44 estudio 28 0.35% 47,65%
45 técnica 26 0.33% 47,98%
46 electricidad 26 0.33% 48,30%
47 aprendizaje 25 0.32% 48,62%
48 oportunidad 25 0.31% 48,93%
49 recursos 25 0.31% 49,24%
50 redes sociales 24 0.30% 49,54%
51 sistemas 23 0.29% 49,83%
52 autos 23 0.29% 50,12%
53 seguridad 22 0.28% 50,40%
54 rapidez 21 0.26% 50,67%
55 nuevo 20 0.25% 50,92%
56 descubrimiento 20 0.25% 51,18%
57 atraso 19 0.24% 51,42%
58 capacitación 19 0.23% 51,65%
59 confort 18 0.23% 51,88%
60 tv 18 0.23% 52,10%
61..2128 % %
2129 Total general 7,977 100.00% 100,00%

Gráfico dispersión

Total país

a<-merge(count_words_p6_,count_words_p6_2,by.x='P6_p',by.y='P6_2_p', all=TRUE)
a<-a[,c("P6_p","freqrel.x","freqrel.y")]
a<-subset(a, freqrel.x!=100)
a[is.na(a)] <- 0

fig <- plot_ly(data = a, x = ~freqrel.x, y = ~freqrel.y, text = ~P6_p,type='scatter')

fig <- fig %>% layout(
  title = list(
    text = 'Palabras asociadas a "tecnología"',
    xanchor = "right",  # Aligns title to the left
    yanchor = "top",   # Anchors title to the top
    y = 1,          
    x=0.5,
    font = t          
  ),
  xaxis = list(title = 'Primera palabra - frec. relativa %'),
  yaxis = list(title = 'Segunda palabra - frec. relativa %'),
  plot_bgcolor = "#e5ecf6"
)

fig%>%layout(xaxis=list(hoverformat = '.2f'),
                    yaxis=list(hoverformat = '.2f'))
rm(a)

Innovación

Primera palabra que asocian

Total país

Las primeras 30 palabras explican el 56% y arriba del ranking se encuentran “nuevo”,“mejora”, “tecnología” y “crear”.

#Frec.s
count_words_p20_1<-seleccion1%>%
  dplyr::group_by(P20_1_p)%>%
  dplyr::summarise(freq=sum(PONDERA,na.rm=TRUE))%>%
  arrange(desc(freq))%>%
  mutate(freqrel=freq/sum(freq)*100)%>%
  mutate(freqcum = cumsum(freq))%>%
  mutate(freqcumrel = (freqcum/sum(freq))*100)%>%
            bind_rows(summarise(., across(c(freq,freqrel), sum),
                                   across(where(is.character), ~'Total general'),
                                   across(c(freqcum,freqcumrel), last)))
 
                                
count_words_p20_1$P20_1_p[which(is.na(count_words_p20_1$P20_1_p))] <- 'Ns/Nc'
                                                                                               
  
#Vista preliminar tabla
count_words_p20_1%>%
      select(P20_1_p,freq,freqrel,freqcumrel)%>%

  gt_preview(top_n=60) %>%
  tab_header(title = "Total país: Qué palabra asocia a Innovación?
- Tabla de Frecuencias",
             subtitle = "* Primeros 60 registros") %>%
  cols_label(P20_1_p= "Innovación - Primera palabra asociada",
             freq= "Frec.",
             freqrel="Frec. relativa %",
             freqcumrel= "Frec. acumulada relativa %")%>%
  gt_theme_espn() %>%
  opt_stylize(style = 5, color = "blue") %>%
  fmt_symbol_first(column = freqrel, suffix = "%")%>%
  fmt_symbol_first(column = freqcumrel, suffix = "%")%>%
  opt_all_caps()%>%
 tab_options(table.font.size =12)%>% 
 tab_options(heading.title.font.size = 14)%>%
    fmt_integer(columns = freq, force_sign = FALSE)%>%
    fmt_number(columns = freqrel, decimals=2)
Total país: Qué palabra asocia a Innovación? - Tabla de Frecuencias
* Primeros 60 registros
Innovación - Primera palabra asociada Frec. Frec. relativa % Frec. acumulada relativa %
1 nuevo 1,043 13.07% 13,1%
2 mejora 384 4.81% 17,9%
3 tecnología 362 4.54% 22,4%
4 crear 296 3.71% 26,1%
5 cambio 231 2.90% 29,0%
6 futuro 201 2.52% 31,5%
7 Ns/Nc 187 2.34% 33,9%
8 progreso 171 2.15% 36,0%
9 desarrollo 152 1.91% 37,9%
10 educación 136 1.71% 39,7%
11 creatividad 124 1.55% 41,2%
12 novedad 121 1.52% 42,7%
13 cambios 116 1.46% 44,2%
14 renovar 108 1.35% 45,5%
15 avance 106 1.32% 46,9%
16 salud 104 1.31% 48,2%
17 descubrimiento 84 1.06% 49,2%
18 cambiar 76 0.96% 50,2%
19 calidad 70 0.88% 51,1%
20 crecimiento 59 0.73% 51,8%
21 ciencia 57 0.72% 52,5%
22 investigación 57 0.72% 53,2%
23 inteligencia artificial 54 0.68% 53,9%
24 cosas nuevo 53 0.67% 54,6%
25 innovación 51 0.64% 55,2%
26 trabajo 49 0.62% 55,8%
27 energía 49 0.62% 56,4%
28 adelanto 47 0.59% 57,0%
29 novedoso 42 0.53% 57,6%
30 renovación 42 0.53% 58,1%
31 evolución 41 0.51% 58,6%
32 calidad vida 37 0.47% 59,1%
33 invento 37 0.46% 59,5%
34 ideas 32 0.40% 59,9%
35 estudio 32 0.40% 60,3%
36 tecnologica 32 0.40% 60,7%
37 tecnológica 30 0.38% 61,1%
38 crecer 30 0.38% 61,5%
39 actualización 29 0.37% 61,9%
40 seguridad 28 0.36% 62,2%
41 robótica 28 0.35% 62,6%
42 recursos 26 0.32% 62,9%
43 medicina 25 0.32% 63,2%
44 avanzar 24 0.29% 63,5%
45 experimentar 22 0.28% 63,8%
46 investigar 21 0.27% 64,0%
47 inventar 21 0.26% 64,3%
48 bienestar 20 0.26% 64,6%
49 modernidad 20 0.25% 64,8%
50 conocimiento 20 0.25% 65,1%
51 mejoramiento 19 0.24% 65,3%
52 progresar 19 0.24% 65,5%
53 actualidad 19 0.23% 65,8%
54 modificar 18 0.23% 66,0%
55 pobreza 18 0.23% 66,2%
56 proyectos 17 0.21% 66,4%
57 sustentabilidad 17 0.21% 66,7%
58 empresa 16 0.20% 66,9%
59 nuevo tecnologías 16 0.20% 67,0%
60 inventos 15 0.19% 67,2%
61..1633 % %
1634 Total general 7,977 100.00% 100,0%

Segunda palabra que asocian

Total país

Al preguntar por la segunda palabra asocia a “innovación”, las 30 principales palabras dan cuenta del 37% de las menciones. Y se destacan las palabras “mejora”, “nuevo”, “desarrollo” y “futuro”.

#Frec.s
count_words_p20_2<-seleccion1%>%
  dplyr::group_by(P20_2_p)%>%
  dplyr::summarise(freq=sum(PONDERA,na.rm=TRUE))%>%
  arrange(desc(freq))%>%
  mutate(freqrel=freq/sum(freq)*100)%>%
  mutate(freqcum = cumsum(freq))%>%
  mutate(freqcumrel = (freqcum/sum(freq))*100)
  
count_words_p20_2$P20_2_p[which(is.na(count_words_p20_2$P20_2_p))] <- 'Ns/Nc'


  count_words_p20_2%>%
        select(P20_2_p,freq,freqrel,freqcumrel)%>%
  gt_preview(top_n=60) %>%
  tab_header(title = "Total país: ¿Qué otra palabra asocia a Innovación?
- Tabla de Frecuencias",
             subtitle = "* Primeros 60 registros") %>%
  cols_label(P20_2_p= "Innovación - Segunda palabra asociada",
              freq= "Frec.",
             freqrel="Frec. relativa %",
             freqcumrel= "Frec. acumulada relativa %")%>%
  gt_theme_espn() %>%
  opt_stylize(style = 5, color = "blue") %>%
  fmt_symbol_first(column = freqrel, suffix = "%")%>%
  fmt_symbol_first(column = freqcumrel, suffix = "%")%>%
  opt_all_caps()%>%
 tab_options(table.font.size =12)%>%
    fmt_integer(columns = freq, force_sign = FALSE)%>%
    fmt_number(columns = freqrel, decimals=2) 
Total país: ¿Qué otra palabra asocia a Innovación? - Tabla de Frecuencias
* Primeros 60 registros
Innovación - Segunda palabra asociada Frec. Frec. relativa % Frec. acumulada relativa %
1 mejora 382 4.79% 4,79%
2 nuevo 230 2.88% 7,67%
3 Ns/Nc 229 2.88% 10,55%
4 desarrollo 193 2.41% 12,96%
5 futuro 181 2.26% 15,22%
6 educación 170 2.13% 17,36%
7 tecnología 152 1.90% 19,26%
8 progreso 138 1.73% 20,99%
9 crear 124 1.56% 22,54%
10 avance 119 1.49% 24,04%
11 salud 118 1.47% 25,51%
12 cambio 108 1.35% 26,86%
13 trabajo 89 1.12% 27,98%
14 calidad 82 1.03% 29,01%
15 descubrimiento 82 1.03% 30,04%
16 adelanto 76 0.95% 30,98%
17 ciencia 60 0.76% 31,74%
18 novedad 58 0.73% 32,47%
19 renovar 52 0.65% 33,12%
20 ideas 52 0.65% 33,77%
21 cambiar 51 0.64% 34,41%
22 crecimiento 51 0.64% 35,05%
23 cambios 47 0.59% 35,64%
24 investigación 46 0.57% 36,22%
25 bienestar 44 0.55% 36,76%
26 creatividad 42 0.53% 37,30%
27 seguridad 41 0.51% 37,81%
28 novedoso 36 0.45% 38,25%
29 aprender 35 0.44% 38,70%
30 informática 34 0.43% 39,13%
31 eficiencia 34 0.42% 39,55%
32 calidad vida 33 0.42% 39,97%
33 recursos 33 0.42% 40,39%
34 información 32 0.41% 40,79%
35 moderno 32 0.40% 41,19%
36 economía 31 0.39% 41,58%
37 util 31 0.39% 41,97%
38 avanzar 30 0.38% 42,35%
39 igualdad 30 0.37% 42,72%
40 crecer 28 0.35% 43,07%
41 renovación 28 0.35% 43,41%
42 oportunidad 26 0.33% 43,74%
43 estudio 26 0.33% 44,07%
44 distinto 26 0.33% 44,40%
45 mejoramiento 26 0.33% 44,72%
46 reemplazar 25 0.32% 45,04%
47 diferente 25 0.32% 45,36%
48 actualizar 25 0.32% 45,67%
49 actualización 25 0.31% 45,99%
50 investigar 23 0.29% 46,28%
51 comunicación 23 0.29% 46,57%
52 modernizar 22 0.28% 46,85%
53 unico 22 0.28% 47,13%
54 alimentación 22 0.27% 47,40%
55 medicina 21 0.27% 47,67%
56 innovación 21 0.27% 47,94%
57 capacitación 21 0.26% 48,20%
58 importante 20 0.25% 48,45%
59 bueno 20 0.24% 48,69%
60 novedades 19 0.24% 48,94%
61..2308 % %
2309 viviendas 0 0.00% 100,00%

Gráfico de dispersión

Total país

a<-merge(count_words_p20_1,count_words_p20_2,by.x='P20_1_p',by.y='P20_2_p',all=TRUE)
a<-a[,c("P20_1_p","freqrel.x","freqrel.y")]
a<-subset(a, freqrel.x!=100)
a[is.na(a)] <- 0
  
fig <- plot_ly(data = a, x = ~freqrel.x, y = ~freqrel.y, text = ~P20_1_p,type='scatter')

fig <- fig %>% layout(
  title = list(
    text = 'Palabras asociadas a "innovación"',
    xanchor = "right", 
    yanchor = "top",   
    x = 0.5,           
    y = 1,           
    font = t         
  ),
  xaxis = list(title = 'Primera palabra - frec. relativa %'),
  yaxis = list(title = 'Segunda palabra - frec. relativa %'),
  plot_bgcolor = "#e5ecf6")

fig%>%layout(xaxis=list(hoverformat = '.2f'),
                    yaxis=list(hoverformat = '.2f'))
rm(a)

Nubes de palabras

A continuación se presentan las bolsas de palabras para las palabras ciencia, tecnología e innovación. Para su elaboración, se contemplaron aquellas palabras que acumulaban el 60% de las menciones a fines de que el gráfico no se superpongan/corten las palabras.

Ciencia

Total país

par(mfrow=c(1,2))

#Nube de palabras CIENCIA 1
count_words_p5_<-subset(count_words_p5_, P5_p!="Total general")
max_words=nrow(select(subset(count_words_p5_,freqcumrel<=60),"P5_p"))
set.seed(1234) 

wordcloud(words = count_words_p5_$P5_p,
          freq=count_words_p5_$freq,
          min.freq=1,max.words=max_words,
          scale=c(2.5,.3),
          colors=PaletteDNIC,
          rot.per=0,
          random.order = FALSE,
          fixed.asp=FALSE)
text(0.52,0.9,"Total país: 1ª y 2ª palabra asociada a ciencia",cex=0.9,font=3)

#Nube de palabras CIENCIA 2
count_words_p5_2<-subset(count_words_p5_2, P5_2_p!="Total general")
max_words<-nrow(select(subset(count_words_p5_2,freqcumrel<=60 & P5_2_p!="Total general"),"P5_2_p"))
set.seed(1234) # for reproducibility 
wordcloud(words = count_words_p5_2$P5_2_p,
          freq=count_words_p5_2$freq,
          min.freq=1,
          max.words=max_words ,
          scale=c(2.2,.3),
          colors=PaletteDNIC,
          rot.per=0,
          random.order = FALSE,
          fixed.asp=FALSE)

Tecnología

Total país

par(mfrow=c(1,2))

#Nube de palabras TECNOLOGÍA 1
count_words_p6_<-subset(count_words_p6_, P6_p!="Total general")
max_words<-nrow(select(subset(count_words_p6_,freqcumrel<=60),"P6_p"))
set.seed(1234) # for reproducibility 
wordcloud(words = count_words_p6_$P6_p,
          freq=count_words_p6_$freq,
          min.freq=1,max.words=max_words,
          scale=c(2.1,.25),
          colors=PaletteDNIC,
          rot.per=0,
          random.order = FALSE,
          fixed.asp=FALSE)
text(0.52,0.9,"Total país: 1ª y 2ª palabra asociada a tecnología",cex=0.9,font=3)

#Nube de palabras TECNOLOGÍA 2
count_words_p6_2<-subset(count_words_p6_2, P6_2_p!="Total general")
max_words<-nrow(select(subset(count_words_p6_2,freqcumrel<=60),"P6_2_p"))
set.seed(1234) # for reproducibility 
wordcloud(words = count_words_p6_2$P6_2_p,
          freq=count_words_p6_2$freq,
          min.freq=1,max.words=max_words,
          scale=c(2.1,.25),
          colors=PaletteDNIC,
          rot.per=0,
          random.order = FALSE,
          fixed.asp=FALSE)

Innovación

Total país

#png(filename = "G:/bolsa3.png", width = 1100, height = 700, res = 150)

par(mfrow=c(1,2))

#Nube de palabras INNOVACIÓN 1
count_words_p20_1<-subset(count_words_p20_1, P20_1_p!="Total general")
max_words<-nrow(select(subset(count_words_p20_1,freqcumrel<=60),"P20_1_p"))
set.seed(1234) # for reproducibility 
wordcloud(words = count_words_p20_1$P20_1_p,
          freq=count_words_p20_1$freq,
          min.freq=1,max.words=max_words,
         scale=c(2.3,.3),
          colors=PaletteDNIC,
          rot.per=0,
          random.order = FALSE,
          fixed.asp=FALSE)
text(0.5,0.9,"Total país: 1ª y 2ª palabra asociada a innovación",cex=0.9,font=3)

#Nube de palabras INNOVACIÓN 2
count_words_p20_2<-subset(count_words_p20_2, P20_2_p!="Total general")
max_words<-nrow(select(subset(count_words_p20_2,freqcumrel<=60),"P20_2_p"))
set.seed(1234) 
wordcloud(words = count_words_p20_2$P20_2_p,
          freq=count_words_p20_2$freq,
          min.freq=1,max.words=max_words,
          scale=c(1.95,.25),
          colors=PaletteDNIC,
          rot.per=0,
          random.order = FALSE,
          fixed.asp=FALSE)

#dev.off()  

Glosario

Minería de texto: Es el proceso de extracción de información útil y patrones significativos de grandes conjuntos de datos de texto utilizando técnicas de procesamiento del lenguaje natural (NLP), estadísticas y aprendizaje automático.

Procesamiento de lenguaje natural: El procesamiento del lenguaje natural (PLN) es una rama de la inteligencia artificial (IA) que combina la lingüística computacional (modelización del lenguaje humano basada en reglas) con modelos estadísticos y de machine learning para que los ordenadores y dispositivos digitales reconozcan, comprendan y analicen texto y/o voz.

Tokenización: La tokenización es el proceso de dividir el texto en unidades más pequeñas, llamadas tokens, que generalmente corresponden a palabras o frases.

Stemming: El stemming es un proceso de normalización de palabras por el cual se reducen las palabras a sus raíces o morfema, lo que permite mejorar la eficiencia y precisión en tareas como el análisis de variación de una palabra, la clasificación de texto, la agrupación y la recuperación de información.

Misspelled: Refiere a la identificación de las palabras “mal escritas”.

Words Cloud: Una nube de palabras es un recurso visual que normalmente se utiliza para representar un conjunto de ideas, palabras, conceptos o etiquetas de manera gráfica. Permite identificar de forma visual cuales son las palabras más significativas y con mayor frecuencia.

Bigramas: Los bigramas son aquellas palabras que están conformadas por dos palabras consecutivas en un texto, como por ejemplo “investigación aplicada”.

Palabras vacías: Las palabras vacías son aquellas palabras sin significado significativo, como artículos, pronombres, preposiciones, etc. que suelen ser filtradas antes o después del procesamiento de datos de lenguaje natural.