1 Objetivos

Al finalizar este tutorial, serás capaz de:

  • Configurar un entorno de trabajo organizado en RStudio.
  • Utilizar R como una calculadora para realizar operaciones aritméticas.
  • Asignar valores a objetos (variables) y entender su importancia.
  • Diferenciar los tipos de datos básicos en R usando la función class().
  • Crear estructuras de datos fundamentales: vectores, matrices y data frames.
  • Instalar y cargar paquetes para extender la funcionalidad de R.
  • Cargar un conjunto de datos (la base CAP) desde un archivo Excel.
  • Realizar una exploración inicial de un data frame con funciones como head(), dim() y str().

2 Instrucciones Generales

  • Trabajo individual: Realiza cada paso para familiarizarte con los comandos.
  • Código: Lo que está marcado en bloques grises es el código que deberás ejecutar en RStudio. En este documento R Markdown, los bloques de código son ejecutables al renderizar el documento, lo que genera salidas automáticas para ilustrar los resultados.
  • Directorio de trabajo: Guarda todos tus archivos en una única carpeta. Por ejemplo: “CursoR” en tu Escritorio.

3 Entorno de Trabajo

3.1 Creando un Script de R

Un Script es un archivo donde escribes y guardas tu código. Esto permite documentar, reutilizar y compartir tu trabajo.

  1. Abre RStudio.
  2. Ve a File > New File > R Script.
  3. Guarda el script como: Intro-R_TuNombre.R en tu carpeta de trabajo.

3.2 Configuración del Directorio de Trabajo

El directorio de trabajo es donde R busca archivos y guarda resultados.

# Muestra el directorio de trabajo actual
getwd()
## [1] "C:/Users/gfguevara/OneDrive - UNIVERSIDAD DR. JOSE MATIAS DELGADO/Matias/Ciclo II - 2025/BIE-25/Tutoriales/base_CAP"

La forma más sencilla de fijar tu directorio es ir a: Session > Set Working Directory > To Source File Location

3.3 Comentarios: La Clave de un Buen Código

En R, todo lo que sigue a # es un comentario.

# Esto es un comentario
# La función rm() limpia todos los objetos de la memoria
rm(list = ls()) # Este es un comentario en la misma línea

Para entenderlo el código anterior se descompone en dos partes que funcionan de adentro hacia afuera:

  1. ls(): Esta función por sí sola lista (de ahí “ls”) todos los objetos (variables, data frames, funciones, etc.) que has creado en tu entorno actual. Te devuelve un vector con los nombres de todos esos objetos.

  2. rm(…): Esta función se usa para eliminar (del inglés remove) objetos. Le pasas los nombres de los objetos que quieres borrar.

Al combinar rm(list = ls()), le estás diciendo a R: “Primero, ls() para obtener una lista de todo lo que hay en la memoria. Luego, pasa esa lista completa a la función rm() para que borre cada uno de esos objetos”.

Es buena práctica limpiar el entorno al inicio de cada script.

3.4 R como Calculadora

R respeta el orden de operaciones estándar (PEMDAS: Paréntesis, Exponentes, Multiplicación/División, Adición/Sustracción).

# Operaciones básicas
3 + 5 * 2
## [1] 13
# Usar paréntesis para cambiar el orden
(3 + 5) * 2
## [1] 16
# Potencias con ^
2^3
## [1] 8

3.5 Objetos y Tipos de Datos

3.5.1 Creando Objetos: Variables

Las variables sirven para almacenar un valor que luego vamos a utilizar en algún procedimiento.

Para hacer la asignación de un valor a alguna variable se utiliza el operador <- entre el valor y el nombre de la variable. A continuación un ejemplo sencillo.

# Asignar el valor 10 al objeto 'x'
x <- 10

# Usar objetos en operaciones
y <- x * 2

# Imprimir 'y'
y
## [1] 20

Nota: En R, se recomienda usar <- para asignaciones en lugar de =, aunque ambos funcionan.

3.5.2 Tipos de Datos

a <- 10.5      # Numérico (decimal)
b <- 20L       # Numérico (entero, se especifica con L)
c <- "Hola"    # Texto (character)
d <- TRUE      # Lógico (TRUE/FALSE)

class(a)
## [1] "numeric"
class(c)
## [1] "character"
class(d)
## [1] "logical"

El comando class(a) en R te dice cuál es el tipo de dato o la estructura del objeto llamado a.

En pocas palabras, es como preguntarle a R: “Oye, ¿qué clase de cosa es este objeto a?”

3.6 Estructuras de Datos

3.6.1 Vectores

Los vectores son arreglos ordenados en los cuales se puede almacenar información de tipo numérico (variable cuantitativa), alfanumérico (variable cualitativa) o lógico (TRUE o FALSE), pero no mezclas de éstos. La función de R para crear un vector es c() y que significa concatenar; dentro de los paréntesis de esta función se ubica la información a almacenar. Una vez construído el vector se acostumbra a etiquetarlo con un nombre corto y representativo de la información que almacena, la asignación se hace por medio del operador <- entre el nombre y el vector.

# Vector numérico
edades <- c(25, 31, 23, 52)
edades
## [1] 25 31 23 52
# Vector de texto
nombres <- c("Ana", "Luis", "Eva", "Juan")
nombres
## [1] "Ana"  "Luis" "Eva"  "Juan"
# Secuencia numérica
mi_secuencia <- 1:9
mi_secuencia
## [1] 1 2 3 4 5 6 7 8 9

3.6.2 Matrices

Las matrices son arreglos rectangulares de filas y columnas con información numérica, alfanumérica o lógica. Para construir una matriz se usa la función matrix( ).

mi_matriz <- matrix(1:9, nrow = 3)
mi_matriz
##      [,1] [,2] [,3]
## [1,]    1    4    7
## [2,]    2    5    8
## [3,]    3    6    9
# Usando cbind() y rbind()
columna1 <- c(1, 2, 3)
columna2 <- c(4, 5, 6)
columna3 <- c(7, 8, 9)

matriz_columnas <- cbind(columna1, columna2, columna3)
matriz_columnas
##      columna1 columna2 columna3
## [1,]        1        4        7
## [2,]        2        5        8
## [3,]        3        6        9
matriz_filas <- rbind(columna1, columna2, columna3)
matriz_filas
##          [,1] [,2] [,3]
## columna1    1    2    3
## columna2    4    5    6
## columna3    7    8    9

3.6.3 Data frames

El marco de datos marco de datos o data frame es uno de los objetos más utilizados porque permite agrupar vectores con información de diferente tipo (numérica, alfanumérica o lógica) en un mismo objeto, la única restricción es que los vectores deben tener la misma longitud. Para crear un marco de datos se usa la función data.frame( )

# Data frame
df_pacientes <- data.frame(
  nombre = nombres,
  edad = edades,
  registrado = c(TRUE, FALSE, TRUE, TRUE)
)
df_pacientes
##   nombre edad registrado
## 1    Ana   25       TRUE
## 2   Luis   31      FALSE
## 3    Eva   23       TRUE
## 4   Juan   52       TRUE

3.7 Paquetes y Exploración de Datos

3.7.1 Instalación

Podemos ampliar las capacidades de R usando “paquetes” (también conocidos como librerías), que son colecciones de funciones y datos que otras personas han creado y compartido.

Piénsalo como instalar aplicaciones en tu teléfono. R viene con herramientas básicas, pero si quieres hacer algo más específico (como leer archivos de Excel), necesitas instalar un “paquete” que añada esa funcionalidad.

# Instalar paquete (solo se ejecuta una vez)
install.packages("readxl", repos = "https://cran.rstudio.com/")
## Installing package into 'C:/Users/gfguevara/AppData/Local/R/win-library/4.5'
## (as 'lib' is unspecified)
## package 'readxl' successfully unpacked and MD5 sums checked
## 
## The downloaded binary packages are in
##  C:\Users\gfguevara\AppData\Local\Temp\RtmpAvpx4r\downloaded_packages

Este comando instala el paquete.

install.packages(): Es la función que le dice a R: “Ve a internet, busca este paquete y descárgalo en mi computadora”.

“readxl”: Es el nombre del paquete que quieres instalar. En este caso, readxl es un paquete muy popular que sirve específicamente para leer datos desde archivos de Microsoft Excel (.xls y .xlsx).

Este paso solo necesitas hacerlo una vez por cada computadora (o cada vez que actualices R). Una vez que el paquete está instalado, ya vive en tu sistema.

3.7.2 Carga de Paquetes

El código library(readxl) activa o carga el paquete readxl en tu sesión actual de R, permitiéndote usar todas las funciones que contiene.

Piénsalo como sacar una herramienta específica de tu caja de herramientas. Ya tienes la herramienta (el paquete fue instalado previamente con install.packages()), pero necesitas tenerla en la mano para poder usarla.

# Cargar paquete
library(readxl)

Desglose del Comando library(): Es la función que le dice a R: “Prepara para su uso el siguiente paquete que ya tengo instalado”.

readxl: Es el nombre del paquete que quieres activar. Este paquete en particular contiene funciones para leer archivos de Microsoft Excel (formatos .xls y .xlsx), como la popular función read_excel().

R no carga todos los paquetes que tienes instalados al mismo tiempo. Hacerlo consumiría mucha memoria y podría crear conflictos entre funciones de distintos paquetes que se llamen igual.

Por eso, debes indicarle explícitamente qué “librerías” de funciones necesitas para tu análisis en cada sesión. Si intentaras usar la función read_excel() sin antes haber ejecutado library(readxl), R te daría un error diciendo que no puede encontrar esa función.

3.7.3 Cargar la Base de Datos CAP

Uno de los pasos más importantes en el análisis de datos es importar un conjunto de datos a R para poder trabajar con él.

Descarga el archivo desde el repositorio siguiente: https://github.com/gfguevara/base_CAP/raw/refs/heads/main/CAP.xlsx

# Cargar el archivo desde la carpeta local
datos_cap <- read_excel("CAP.xlsx")
## New names:
## • `otros` -> `otros...71`
## • `otros` -> `otros...85`

3.7.4 Exploración Inicial del Data Frame

# Primeras 6 filas
head(datos_cap)
## # A tibble: 6 × 86
##      id part_prev municipio  edad genero nivel_edu enf_cro tipo_enfcro  ninguna
##   <dbl>     <dbl>     <dbl> <dbl>  <dbl>     <dbl>   <dbl> <chr>          <dbl>
## 1     1         0         6    52      0         0       0 Ninguna            1
## 2     2         1         6    50      1         1       1 Diabetes           0
## 3     3         0         6    27      0         4       0 Ninguna            1
## 4     4         0         6    50      1         3       0 Ninguna            1
## 5     5         0         6    47      0         3       1 Hipertensión       0
## 6     6         0         6    47      1         2       1 Hipertensión       0
## # ℹ 77 more variables: hipertension <dbl>, diabetes <dbl>, epoc <dbl>,
## #   renal <dbl>, artritis <dbl>, cardiopatia <dbl>, hipotiroidismo <dbl>,
## #   glaucoma <dbl>, lupus <dbl>, ulcera_venosa <dbl>,
## #   `Otras enfermedades crónicas, especifique` <chr>, area <dbl>, hijxs <dbl>,
## #   nucleo <dbl>, empleo <dbl>, ocupacion <dbl>, ingreso <dbl>, prev_per <dbl>,
## #   rec_apoyo <dbl>, satisfaccion <dbl>, prev_fam <dbl>, mortalidad <dbl>,
## #   c1 <dbl>, c2 <dbl>, c3 <dbl>, c4 <dbl>, c5 <dbl>, c6 <dbl>, c7 <dbl>, …
# Dimensiones (filas, columnas)
dim(datos_cap)
## [1] 515  86
# Estructura del data frame
str(datos_cap)
## tibble [515 × 86] (S3: tbl_df/tbl/data.frame)
##  $ id                                      : num [1:515] 1 2 3 4 5 6 7 8 9 10 ...
##  $ part_prev                               : num [1:515] 0 1 0 0 0 0 1 0 1 0 ...
##  $ municipio                               : num [1:515] 6 6 6 6 6 6 6 6 6 6 ...
##  $ edad                                    : num [1:515] 52 50 27 50 47 47 33 21 37 29 ...
##  $ genero                                  : num [1:515] 0 1 0 1 0 1 0 0 1 1 ...
##  $ nivel_edu                               : num [1:515] 0 1 4 3 3 2 4 3 2 4 ...
##  $ enf_cro                                 : num [1:515] 0 1 0 0 1 1 0 0 1 0 ...
##  $ tipo_enfcro                             : chr [1:515] "Ninguna" "Diabetes" "Ninguna" "Ninguna" ...
##  $ ninguna                                 : num [1:515] 1 0 1 1 0 0 1 1 0 1 ...
##  $ hipertension                            : num [1:515] 0 0 0 0 1 1 0 0 1 0 ...
##  $ diabetes                                : num [1:515] 0 1 0 0 0 1 0 0 0 0 ...
##  $ epoc                                    : num [1:515] 0 0 0 0 0 0 0 0 0 0 ...
##  $ renal                                   : num [1:515] 0 0 0 0 0 0 0 0 0 0 ...
##  $ artritis                                : num [1:515] 0 0 0 0 0 0 0 0 0 0 ...
##  $ cardiopatia                             : num [1:515] 0 0 0 0 0 0 0 0 0 0 ...
##  $ hipotiroidismo                          : num [1:515] 0 0 0 0 0 0 0 0 0 0 ...
##  $ glaucoma                                : num [1:515] 0 0 0 0 0 0 0 0 0 0 ...
##  $ lupus                                   : num [1:515] 0 0 0 0 0 0 0 0 0 0 ...
##  $ ulcera_venosa                           : num [1:515] 0 0 0 0 0 0 0 0 0 0 ...
##  $ Otras enfermedades crónicas, especifique: chr [1:515] NA NA NA NA ...
##  $ area                                    : num [1:515] 1 0 0 1 1 0 1 0 1 1 ...
##  $ hijxs                                   : num [1:515] 1 1 1 0 1 1 1 1 1 1 ...
##  $ nucleo                                  : num [1:515] 5 2 5 3 4 5 3 2 3 3 ...
##  $ empleo                                  : num [1:515] 0 1 0 1 1 0 1 0 1 1 ...
##  $ ocupacion                               : num [1:515] 0 1 0 4 4 0 3 0 1 1 ...
##  $ ingreso                                 : num [1:515] 1 0 2 1 0 1 3 1 2 0 ...
##  $ prev_per                                : num [1:515] 0 3 0 0 0 0 0 0 1 1 ...
##  $ rec_apoyo                               : num [1:515] 3 0 3 3 3 3 3 3 2 2 ...
##  $ satisfaccion                            : num [1:515] 5 5 5 5 5 5 5 5 3 4 ...
##  $ prev_fam                                : num [1:515] 2 0 0 0 0 3 0 3 1 1 ...
##  $ mortalidad                              : num [1:515] 0 0 0 0 0 0 0 0 1 0 ...
##  $ c1                                      : num [1:515] 3 1 1 1 1 1 1 1 1 1 ...
##  $ c2                                      : num [1:515] 2 1 1 1 1 1 1 1 1 1 ...
##  $ c3                                      : num [1:515] 3 1 3 1 1 3 1 3 3 1 ...
##  $ c4                                      : num [1:515] 1 1 1 1 1 1 1 3 3 1 ...
##  $ c5                                      : num [1:515] 1 3 1 1 3 1 3 3 3 2 ...
##  $ c6                                      : num [1:515] 1 1 2 1 1 2 1 2 2 1 ...
##  $ c7                                      : num [1:515] 3 3 2 2 3 1 1 3 1 1 ...
##  $ c8                                      : num [1:515] 1 1 1 1 1 1 1 1 1 1 ...
##  $ c9                                      : num [1:515] 1 1 2 1 1 1 1 1 1 1 ...
##  $ c10                                     : num [1:515] 2 1 1 2 1 1 1 1 1 1 ...
##  $ a1                                      : num [1:515] 5 4 5 5 4 3 4 3 2 5 ...
##  $ a2                                      : num [1:515] 5 5 5 5 4 3 4 3 5 5 ...
##  $ a3                                      : num [1:515] 1 2 5 5 3 1 4 1 2 4 ...
##  $ a4                                      : num [1:515] 5 5 5 5 4 5 4 5 5 4 ...
##  $ a5                                      : num [1:515] 1 3 5 1 4 4 4 1 3 4 ...
##  $ p1                                      : num [1:515] 5 3 5 5 1 4 3 3 3 2 ...
##  $ p2                                      : num [1:515] 2 0 3 3 0 2 0 2 2 0 ...
##  $ p3                                      : num [1:515] 3 0 2 3 0 3 0 2 2 0 ...
##  $ p4                                      : num [1:515] 5 1 5 3 1 3 1 3 3 1 ...
##  $ p5                                      : num [1:515] 5 1 3 2 3 3 3 2 5 3 ...
##  $ dosis                                   : num [1:515] 3 3 4 3 2 2 2 1 4 3 ...
##  $ razon_nv                                : num [1:515] 5 6 1 6 6 6 6 6 1 6 ...
##  $ fuentes                                 : chr [1:515] "Periódico, Televisión, Radio, Otro medio, especificar" "Televisión, Redes sociales: WhatsApp, Facebook, etc." "Televisión, Redes sociales: WhatsApp, Facebook, etc., Radio, Páginas de internet" "Periódico, Televisión, Páginas de internet" ...
##  $ periodico                               : num [1:515] 1 0 0 1 0 1 0 0 1 0 ...
##  $ television                              : num [1:515] 1 1 1 1 0 1 1 1 1 0 ...
##  $ redes_sociales                          : num [1:515] 0 1 1 0 1 0 1 1 0 1 ...
##  $ personal_salud                          : num [1:515] 0 0 0 0 0 0 0 0 0 0 ...
##  $ radio                                   : num [1:515] 1 0 1 0 0 1 0 0 1 0 ...
##  $ paginas_internet                        : num [1:515] 0 0 1 1 0 0 0 0 0 1 ...
##  $ escuela                                 : num [1:515] 1 0 0 0 0 0 0 0 0 0 ...
##  $ mensajes                                : num [1:515] 1 1 1 1 1 1 1 1 1 1 ...
##  $ patrocinio                              : num [1:515] 5 2 6 1 1 1 2 1 2 1 ...
##  $ mensajes_rec                            : chr [1:515] "Uso de la mascarilla, El distanciamiento social, Ponerse la vacuna" "Uso de la mascarilla, Lavado de manos" "Uso de la mascarilla, El distanciamiento social, Lavado de manos" "Uso de la mascarilla, El distanciamiento social, Ponerse la vacuna" ...
##  $ uso_de_mascarilla                       : num [1:515] 1 1 1 1 0 0 0 0 1 1 ...
##  $ distanciamiento_social                  : num [1:515] 1 0 1 1 1 0 1 0 1 0 ...
##  $ lavado_de_manos                         : num [1:515] 0 1 1 0 1 0 1 0 1 1 ...
##  $ ponerse_la_vacuna                       : num [1:515] 1 0 0 1 1 0 0 0 0 1 ...
##  $ no_recuerdo                             : num [1:515] 0 0 0 0 0 0 0 1 0 0 ...
##  $ todas                                   : num [1:515] 0 0 0 0 0 1 0 0 0 0 ...
##  $ otros...71                              : num [1:515] 0 0 0 0 0 0 0 0 0 0 ...
##  $ No_he_escuchado                         : num [1:515] 0 0 0 0 0 0 0 0 0 0 ...
##  $ mitos                                   : chr [1:515] "El virus se transmite por el agua por eso no se deben usar las piscinas, El virus se transmite en las suelas de"| __truncated__ "Otros" "Se debe rociar desinfectantes en la ropa y el cuerpo para protegerse del virus, No se debe vacunar a las person"| __truncated__ "El virus se transmite por el agua por eso no se deben usar las piscinas, El virus se transmite en las suelas de"| __truncated__ ...
##  $ transmite_por_el_agua                   : num [1:515] 1 0 0 1 0 1 0 1 1 0 ...
##  $ transmite_en_las_suelas                 : num [1:515] 1 0 0 1 0 1 0 1 1 0 ...
##  $ rociar_desinfectantes                   : num [1:515] 1 0 1 1 0 1 0 1 1 0 ...
##  $ beben_alcohol                           : num [1:515] 0 0 0 1 0 0 0 0 0 0 ...
##  $ pueden_dejar_de_aplicar                 : num [1:515] 1 0 0 0 0 0 0 1 0 0 ...
##  $ no_se_debe_vacunar                      : num [1:515] 0 0 1 1 1 0 1 0 0 1 ...
##  $ producen_esterilidad                    : num [1:515] 0 0 0 0 0 0 1 0 0 0 ...
##  $ producen_homosexualidad                 : num [1:515] 0 1 0 0 0 0 0 0 0 0 ...
##  $ inyectan_el_virus                       : num [1:515] 0 0 1 1 0 1 0 0 0 0 ...
##  $ antibióticos_son_buenos                 : num [1:515] 0 0 0 1 0 1 0 1 1 0 ...
##  $ vitaminas_y_minerales                   : num [1:515] 0 0 0 0 0 0 0 1 1 0 ...
##  $ otros...85                              : num [1:515] 0 1 0 0 0 0 0 0 0 0 ...
##  $ entrevistadoras                         : num [1:515] 2 1 2 2 1 2 1 2 2 1 ...
# Resumen estadístico
summary(datos_cap)
##        id          part_prev         municipio          edad      
##  Min.   :  1.0   Min.   :0.00000   Min.   :1.000   Min.   :19.00  
##  1st Qu.:129.5   1st Qu.:0.00000   1st Qu.:3.500   1st Qu.:30.00  
##  Median :258.0   Median :0.00000   Median :6.000   Median :40.00  
##  Mean   :258.0   Mean   :0.08932   Mean   :4.849   Mean   :42.37  
##  3rd Qu.:386.5   3rd Qu.:0.00000   3rd Qu.:6.000   3rd Qu.:55.00  
##  Max.   :515.0   Max.   :1.00000   Max.   :7.000   Max.   :89.00  
##                                                                   
##      genero        nivel_edu       enf_cro      tipo_enfcro       
##  Min.   :0.000   Min.   :0.00   Min.   :0.000   Length:515        
##  1st Qu.:0.000   1st Qu.:2.00   1st Qu.:0.000   Class :character  
##  Median :0.000   Median :3.00   Median :0.000   Mode  :character  
##  Mean   :0.435   Mean   :3.21   Mean   :0.334                     
##  3rd Qu.:1.000   3rd Qu.:4.00   3rd Qu.:1.000                     
##  Max.   :1.000   Max.   :6.00   Max.   :2.000                     
##                                                                   
##     ninguna        hipertension       diabetes           epoc         
##  Min.   :0.0000   Min.   :0.0000   Min.   :0.0000   Min.   :0.000000  
##  1st Qu.:0.0000   1st Qu.:0.0000   1st Qu.:0.0000   1st Qu.:0.000000  
##  Median :1.0000   Median :0.0000   Median :0.0000   Median :0.000000  
##  Mean   :0.6757   Mean   :0.2563   Mean   :0.1165   Mean   :0.007767  
##  3rd Qu.:1.0000   3rd Qu.:1.0000   3rd Qu.:0.0000   3rd Qu.:0.000000  
##  Max.   :1.0000   Max.   :1.0000   Max.   :1.0000   Max.   :1.000000  
##                                                                       
##      renal            artritis        cardiopatia       hipotiroidismo    
##  Min.   :0.00000   Min.   :0.00000   Min.   :0.000000   Min.   :0.000000  
##  1st Qu.:0.00000   1st Qu.:0.00000   1st Qu.:0.000000   1st Qu.:0.000000  
##  Median :0.00000   Median :0.00000   Median :0.000000   Median :0.000000  
##  Mean   :0.01942   Mean   :0.01942   Mean   :0.001942   Mean   :0.001942  
##  3rd Qu.:0.00000   3rd Qu.:0.00000   3rd Qu.:0.000000   3rd Qu.:0.000000  
##  Max.   :1.00000   Max.   :1.00000   Max.   :1.000000   Max.   :1.000000  
##                                                                           
##     glaucoma            lupus          ulcera_venosa     
##  Min.   :0.000000   Min.   :0.000000   Min.   :0.000000  
##  1st Qu.:0.000000   1st Qu.:0.000000   1st Qu.:0.000000  
##  Median :0.000000   Median :0.000000   Median :0.000000  
##  Mean   :0.001946   Mean   :0.001942   Mean   :0.001942  
##  3rd Qu.:0.000000   3rd Qu.:0.000000   3rd Qu.:0.000000  
##  Max.   :1.000000   Max.   :1.000000   Max.   :1.000000  
##  NA's   :1                                               
##  Otras enfermedades crónicas, especifique      area            hijxs      
##  Length:515                               Min.   :0.0000   Min.   :0.000  
##  Class :character                         1st Qu.:0.0000   1st Qu.:0.000  
##  Mode  :character                         Median :1.0000   Median :1.000  
##                                           Mean   :0.6408   Mean   :0.635  
##                                           3rd Qu.:1.0000   3rd Qu.:1.000  
##                                           Max.   :1.0000   Max.   :1.000  
##                                                                           
##      nucleo           empleo        ocupacion         ingreso      
##  Min.   :  1.00   Min.   :0.000   Min.   : 0.000   Min.   :0.0000  
##  1st Qu.:  3.00   1st Qu.:1.000   1st Qu.: 1.000   1st Qu.:0.0000  
##  Median :  4.00   Median :1.000   Median : 3.000   Median :1.0000  
##  Mean   :  5.67   Mean   :1.021   Mean   : 3.771   Mean   :0.9223  
##  3rd Qu.:  5.00   3rd Qu.:1.000   3rd Qu.: 6.000   3rd Qu.:2.0000  
##  Max.   :999.00   Max.   :3.000   Max.   :10.000   Max.   :4.0000  
##                                                                    
##     prev_per        rec_apoyo       satisfaccion      prev_fam     
##  Min.   :0.0000   Min.   :  0.00   Min.   :2.000   Min.   :0.0000  
##  1st Qu.:0.0000   1st Qu.:  1.00   1st Qu.:3.000   1st Qu.:0.0000  
##  Median :0.0000   Median :  3.00   Median :5.000   Median :0.0000  
##  Mean   :0.4738   Mean   : 29.43   Mean   :4.278   Mean   :0.7709  
##  3rd Qu.:1.0000   3rd Qu.:  3.00   3rd Qu.:5.000   3rd Qu.:1.0000  
##  Max.   :3.0000   Max.   :999.00   Max.   :5.000   Max.   :3.0000  
##                                                                    
##    mortalidad            c1              c2              c3       
##  Min.   :0.00000   Min.   :1.000   Min.   :1.000   Min.   :1.000  
##  1st Qu.:0.00000   1st Qu.:1.000   1st Qu.:1.000   1st Qu.:1.000  
##  Median :0.00000   Median :1.000   Median :1.000   Median :1.000  
##  Mean   :0.04466   Mean   :1.066   Mean   :1.151   Mean   :1.645  
##  3rd Qu.:0.00000   3rd Qu.:1.000   3rd Qu.:1.000   3rd Qu.:2.000  
##  Max.   :1.00000   Max.   :3.000   Max.   :3.000   Max.   :3.000  
##                                                                   
##        c4              c5              c6              c7             c8       
##  Min.   :1.000   Min.   :1.000   Min.   :1.000   Min.   :1.00   Min.   :1.000  
##  1st Qu.:1.000   1st Qu.:1.000   1st Qu.:1.000   1st Qu.:1.00   1st Qu.:1.000  
##  Median :1.000   Median :2.000   Median :1.000   Median :2.00   Median :1.000  
##  Mean   :1.171   Mean   :2.155   Mean   :1.301   Mean   :1.94   Mean   :1.037  
##  3rd Qu.:1.000   3rd Qu.:3.000   3rd Qu.:2.000   3rd Qu.:3.00   3rd Qu.:1.000  
##  Max.   :3.000   Max.   :3.000   Max.   :3.000   Max.   :3.00   Max.   :3.000  
##                                                                                
##        c9             c10              a1              a2              a3      
##  Min.   :1.000   Min.   :1.000   Min.   :2.000   Min.   :1.000   Min.   :1.00  
##  1st Qu.:1.000   1st Qu.:1.000   1st Qu.:3.000   1st Qu.:3.000   1st Qu.:1.00  
##  Median :1.000   Median :2.000   Median :4.000   Median :4.000   Median :2.00  
##  Mean   :1.091   Mean   :2.062   Mean   :3.986   Mean   :4.033   Mean   :2.25  
##  3rd Qu.:1.000   3rd Qu.:3.000   3rd Qu.:5.000   3rd Qu.:5.000   3rd Qu.:3.00  
##  Max.   :3.000   Max.   :3.000   Max.   :5.000   Max.   :5.000   Max.   :5.00  
##                                                                                
##        a4              a5             p1              p2              p3       
##  Min.   :1.000   Min.   :1.00   Min.   :0.000   Min.   :0.000   Min.   :0.000  
##  1st Qu.:3.000   1st Qu.:2.00   1st Qu.:1.000   1st Qu.:0.500   1st Qu.:0.000  
##  Median :4.000   Median :3.00   Median :2.000   Median :1.000   Median :1.000  
##  Mean   :3.808   Mean   :2.75   Mean   :2.468   Mean   :1.579   Mean   :1.524  
##  3rd Qu.:5.000   3rd Qu.:3.00   3rd Qu.:4.000   3rd Qu.:3.000   3rd Qu.:3.000  
##  Max.   :5.000   Max.   :5.00   Max.   :5.000   Max.   :5.000   Max.   :5.000  
##                                                                                
##        p4              p5            dosis          razon_nv     
##  Min.   :0.000   Min.   :0.000   Min.   :0.000   Min.   : 1.000  
##  1st Qu.:1.000   1st Qu.:2.000   1st Qu.:2.000   1st Qu.: 5.000  
##  Median :3.000   Median :3.000   Median :2.000   Median : 5.000  
##  Mean   :2.936   Mean   :3.103   Mean   :2.355   Mean   : 4.746  
##  3rd Qu.:5.000   3rd Qu.:4.000   3rd Qu.:3.000   3rd Qu.: 6.000  
##  Max.   :5.000   Max.   :5.000   Max.   :4.000   Max.   :11.000  
##                                                                  
##    fuentes            periodico        television     redes_sociales  
##  Length:515         Min.   :0.0000   Min.   :0.0000   Min.   :0.0000  
##  Class :character   1st Qu.:0.0000   1st Qu.:1.0000   1st Qu.:1.0000  
##  Mode  :character   Median :0.0000   Median :1.0000   Median :1.0000  
##                     Mean   :0.1107   Mean   :0.8408   Mean   :0.7592  
##                     3rd Qu.:0.0000   3rd Qu.:1.0000   3rd Qu.:1.0000  
##                     Max.   :1.0000   Max.   :1.0000   Max.   :1.0000  
##                                                                       
##  personal_salud       radio        paginas_internet    escuela        
##  Min.   :0.0000   Min.   :0.0000   Min.   :0.0000   Min.   :0.000000  
##  1st Qu.:0.0000   1st Qu.:0.0000   1st Qu.:0.0000   1st Qu.:0.000000  
##  Median :0.0000   Median :0.0000   Median :0.0000   Median :0.000000  
##  Mean   :0.1243   Mean   :0.1786   Mean   :0.2233   Mean   :0.001942  
##  3rd Qu.:0.0000   3rd Qu.:0.0000   3rd Qu.:0.0000   3rd Qu.:0.000000  
##  Max.   :1.0000   Max.   :1.0000   Max.   :1.0000   Max.   :1.000000  
##                                                                       
##     mensajes        patrocinio    mensajes_rec       uso_de_mascarilla
##  Min.   :0.0000   Min.   :1.000   Length:515         Min.   :0.0000   
##  1st Qu.:0.0000   1st Qu.:1.000   Class :character   1st Qu.:0.0000   
##  Median :1.0000   Median :7.000   Mode  :character   Median :0.0000   
##  Mean   :0.8252   Mean   :4.297                      Mean   :0.4136   
##  3rd Qu.:1.0000   3rd Qu.:7.000                      3rd Qu.:1.0000   
##  Max.   :2.0000   Max.   :7.000                      Max.   :1.0000   
##                                                                       
##  distanciamiento_social lavado_de_manos  ponerse_la_vacuna  no_recuerdo      
##  Min.   :0.0000         Min.   :0.0000   Min.   :0.0000    Min.   :0.000000  
##  1st Qu.:0.0000         1st Qu.:0.0000   1st Qu.:0.0000    1st Qu.:0.000000  
##  Median :1.0000         Median :1.0000   Median :0.0000    Median :0.000000  
##  Mean   :0.5592         Mean   :0.6155   Mean   :0.2621    Mean   :0.009709  
##  3rd Qu.:1.0000         3rd Qu.:1.0000   3rd Qu.:1.0000    3rd Qu.:0.000000  
##  Max.   :1.0000         Max.   :1.0000   Max.   :1.0000    Max.   :1.000000  
##                                                                              
##      todas          otros...71       No_he_escuchado      mitos          
##  Min.   :0.0000   Min.   :0.000000   Min.   :0.00000   Length:515        
##  1st Qu.:0.0000   1st Qu.:0.000000   1st Qu.:0.00000   Class :character  
##  Median :0.0000   Median :0.000000   Median :0.00000   Mode  :character  
##  Mean   :0.2854   Mean   :0.007767   Mean   :0.06408                     
##  3rd Qu.:1.0000   3rd Qu.:0.000000   3rd Qu.:0.00000                     
##  Max.   :1.0000   Max.   :1.000000   Max.   :1.00000                     
##                                                                          
##  transmite_por_el_agua transmite_en_las_suelas rociar_desinfectantes
##  Min.   :0.0000        Min.   :0.0000          Min.   :0.0000       
##  1st Qu.:0.0000        1st Qu.:1.0000          1st Qu.:0.0000       
##  Median :1.0000        Median :1.0000          Median :1.0000       
##  Mean   :0.7184        Mean   :0.8544          Mean   :0.6175       
##  3rd Qu.:1.0000        3rd Qu.:1.0000          3rd Qu.:1.0000       
##  Max.   :1.0000        Max.   :1.0000          Max.   :1.0000       
##                                                                     
##  beben_alcohol    pueden_dejar_de_aplicar no_se_debe_vacunar
##  Min.   :0.0000   Min.   :0.0000          Min.   :0.0000    
##  1st Qu.:0.0000   1st Qu.:0.0000          1st Qu.:0.0000    
##  Median :0.0000   Median :0.0000          Median :0.0000    
##  Mean   :0.1981   Mean   :0.1359          Mean   :0.1495    
##  3rd Qu.:0.0000   3rd Qu.:0.0000          3rd Qu.:0.0000    
##  Max.   :1.0000   Max.   :1.0000          Max.   :1.0000    
##                                                             
##  producen_esterilidad producen_homosexualidad inyectan_el_virus
##  Min.   :0.00000      Min.   :0.00000         Min.   :0.0      
##  1st Qu.:0.00000      1st Qu.:0.00000         1st Qu.:0.0      
##  Median :0.00000      Median :0.00000         Median :1.0      
##  Mean   :0.08738      Mean   :0.01165         Mean   :0.6      
##  3rd Qu.:0.00000      3rd Qu.:0.00000         3rd Qu.:1.0      
##  Max.   :1.00000      Max.   :1.00000         Max.   :1.0      
##                                                                
##  antibióticos_son_buenos vitaminas_y_minerales   otros...85     
##  Min.   :0.0000          Min.   :0.000         Min.   :0.00000  
##  1st Qu.:0.0000          1st Qu.:0.000         1st Qu.:0.00000  
##  Median :0.0000          Median :0.000         Median :0.00000  
##  Mean   :0.4699          Mean   :0.435         Mean   :0.05243  
##  3rd Qu.:1.0000          3rd Qu.:1.000         3rd Qu.:0.00000  
##  Max.   :1.0000          Max.   :1.000         Max.   :1.00000  
##                                                                 
##  entrevistadoras
##  Min.   :1.000  
##  1st Qu.:1.000  
##  Median :2.000  
##  Mean   :1.736  
##  3rd Qu.:2.000  
##  Max.   :3.000  
## 

También pudes crear gráficos en R de dos maneras:

Opción 1: Con R Base (Rápido y directo) Esta es la forma más directa de crear un boxplot. Solo necesitas una línea de código usando la función boxplot().

Para acceder a la columna edad del data frame datos_cap, se usa el símbolo $.

# Generar el boxplot básico
boxplot(datos_cap$edad)

# Boxplot con mejoras (título, etiqueta en el eje Y y color)
boxplot(datos_cap$edad,
        main = "Distribución de la Edad",
        ylab = "Edad (años)",
        col = "lightblue")

Opción 2: Con el Paquete ggplot2 (Más Elegante y Flexible) ggplot2 es el paquete más popular para visualización de datos en R. Permite crear gráficos más estéticos y es muy potente para personalizarlos.

Primero, asegúrate de tenerlo instalado y cargado.

# 1. Instalar (si no lo tienes) - Solo se hace una vez
# install.packages("ggplot2")

# 2. Cargar el paquete en tu sesión
library(ggplot2)

# 3. Crear el gráfico
ggplot(data = datos_cap, aes(y = edad)) +
  geom_boxplot(fill = "skyblue", color = "black") +
  labs(title = "Distribución de la Edad de los Participantes",
       y = "Edad (años)",
       x = "") + # Oculta la etiqueta del eje X que no es necesaria aquí
  theme_minimal()

¡Felicidades! Has completado la primera parte del tutorial de introducción a R. Ahora ya puedes manipular y explorar datos en R.