Skip to content

Commit

Permalink
actualizacion practico4
Browse files Browse the repository at this point in the history
  • Loading branch information
DaniOlivaresCollio committed May 15, 2024
1 parent 7d58ce8 commit 1976037
Show file tree
Hide file tree
Showing 60 changed files with 1,345 additions and 7,676 deletions.
4 changes: 2 additions & 2 deletions assignment/03-practico.qmd
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: "Práctica 3. Procesamiento, limpieza y manipulación de datos en R"
date: "2023-05-11"
date: "2024-05-11"
lang: es
output:
number_sections: true
Expand Down Expand Up @@ -404,7 +404,7 @@ select(proc_elsoc, ingreso, ingreso_minimo) #veamosla!
Este último paso es bastante sencillo, solo debemos especificar la base que queremos guadar y su ruta:

```{r collapse=FALSE}
saveRDS(proc_elsoc, file = "output/datos_proc.Rdata")
save(proc_elsoc,file="output/proc_elsoc.Rdata")
```


Expand Down
46 changes: 23 additions & 23 deletions assignment/04-practico.qmd
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: "Práctica 4. Análisis descriptivo de datos en R"
date: "2024-05-05"
date: "2024-05-15"
lang: es
output:
number_sections: true
Expand Down Expand Up @@ -75,15 +75,13 @@ En este práctico utilizaremos los siguientes paquetes:
6. `sjPlot`: para tablas cruzadas o de contingencia



```{r echo=TRUE}
pacman::p_load(tidyverse, # colección de paquetes para manipulación de datos
dplyr, # para manipular datos
psych, # para analizar datos
sjmisc, # para analizar datos
sjPlot) # para tablas de contingencia
options(scipen = 999) # para desactivar notacion cientifica
rm(list = ls()) # para limpiar el entorno de trabajo
```
Expand All @@ -93,17 +91,20 @@ rm(list = ls()) # para limpiar el entorno de trabajo
Usamos los datos creados en el procesamiento que se encuentran guardados en la carpeta output.

```{r collapse=FALSE}
datos_proc <- readRDS("output/datos_proc.Rdata")
load("output/proc_elsoc.Rdata")
```

```{r eval=FALSE}
load(url("https://github.com/cursos-metodos-facso/descriptiva/raw/main/assignment/output/proc_elsoc.Rdata"))
```

## 3 Explorar datos

```{r eval = F}
View(datos_proc) # Ver datos
names(datos_proc) # Nombre de columnas
dim(datos_proc) # Dimensiones
str(datos_proc) # Estructura de los datos (las clases y categorias de repuesta)
View(proc_elsoc) # Ver datos
names(proc_elsoc) # Nombre de columnas
dim(proc_elsoc) # Dimensiones
str(proc_elsoc) # Estructura de los datos (las clases y categorias de repuesta)
```
En este caso, nuestra base de datos procesada tiene 496 casos y 9 variables.

Expand All @@ -120,19 +121,18 @@ Cuando tenemos variables catégoricas, sean nominales u ordinales, podemos utili
Para las variables nominales podemos usar tablas de frecuencias absolutas y relativas, y con ellas conocer la moda, es dedir, el valor con mayor cantidad de observaciones. Para ello, una manera sencilla de hacerlo es mediante la función `table` de R.

```{r eval=TRUE, collapse=FALSE}
table(datos_proc$sexo)
table(proc_elsoc$sexo)
table(datos_proc$ingreso_minimo)
table(proc_elsoc$ingreso_minimo)
table(datos_proc$autor_democ)
table(proc_elsoc$autor_democ)
```

Lo anterior nos entrega la frecuencia absoluta de las variables. Con ello, podemos observar que, en cuanto la preferencias entre autoritarismo y democracia, la mayoría de nuestros casos se concentran en "La democracia es preferible a cualquier otra forma de gobierno". Para conocer la frecuencia relativa o porcentual de estas podemos utilizar el comando `prop.table`.

```{r eval=TRUE, include=TRUE, collapse=FALSE}
(freq_table1 <-table(datos_proc$autor_democ))
(freq_table1 <-table(proc_elsoc$autor_democ))
prop.table(freq_table1)*100
```
Así, podemos sostener que un 57,9% de los casos concideran que la democracia es preferible a cualquier otra forma de gobierno.

Expand All @@ -141,7 +141,7 @@ Así, podemos sostener que un 57,9% de los casos concideran que la democracia es
Mientras que si trabajamos con variables ordinales, podemos usar también la frecuencia acumulada:

```{r eval=TRUE, include=TRUE, collapse=FALSE}
(freq_table2 <- table(datos_proc$tramo_ingreso))
(freq_table2 <- table(proc_elsoc$tramo_ingreso))
(freq_table3 <- prop.table(freq_table2)*100)
cumsum(freq_table3)
Expand All @@ -153,7 +153,7 @@ A partir de este estadístico, podemos ver que un 55% de los casos se ubican deb
También podemos unir todas estas frecuencias en una sola tabla:

```{r eval=TRUE, include=TRUE, collapse=FALSE}
tbl3 <- table(datos_proc$tramo_ingreso)
tbl3 <- table(proc_elsoc$tramo_ingreso)
cbind(Freq=tbl3, relat = prop.table(tbl3)*100, Cum = cumsum(tbl3))
```

Expand All @@ -162,7 +162,7 @@ Otra manera de calcular frecuencias (absolutas, relativas y acumuladas) en R, es

```{r eval=TRUE, include=TRUE, collapse=FALSE}
sjmisc::frq(datos_proc$tramo_ingreso)
sjmisc::frq(proc_elsoc$tramo_ingreso)
```

Expand All @@ -172,17 +172,17 @@ También podemos cruzar dos variables mediante las llamadas tablas de contingenc

```{r eval=TRUE, include=TRUE, collapse=FALSE}
sjt.xtab(datos_proc$sexo, datos_proc$tramo_edad)
sjt.xtab(proc_elsoc$sexo, proc_elsoc$tramo_edad)
sjt.xtab(datos_proc$sexo, datos_proc$tramo_edad,
sjt.xtab(proc_elsoc$sexo, proc_elsoc$tramo_edad,
show.cell.prc = TRUE, #fila y columna
show.summary = FALSE)
sjt.xtab(datos_proc$sexo, datos_proc$tramo_edad,
sjt.xtab(proc_elsoc$sexo, proc_elsoc$tramo_edad,
show.row.prc = TRUE, #solo fila
show.summary = FALSE)
sjt.xtab(datos_proc$sexo, datos_proc$tramo_edad,
sjt.xtab(proc_elsoc$sexo, proc_elsoc$tramo_edad,
show.col.prc=TRUE, #solo columna
show.summary=FALSE)
Expand Down Expand Up @@ -219,7 +219,7 @@ En R existen distintas formas de cálcular este tipo de estadísticos descriptiv
Podemos obtener rapidamente un resumen de los datos con la funcion `summary` de R

```{r eval=TRUE}
summary(datos_proc$ingreso)
summary(proc_elsoc$ingreso)
```

Con esto podemos ver que el promedio o media aritmética del ingreso individual de los entrevistados de nuestra base es de $679.514, mientras que la mediana es de 500.000 pesos.
Expand All @@ -232,7 +232,7 @@ Sin embargo, aunque es informativo, no nos entrega toda la información que quis

```{r eval=TRUE}
psych::describe(datos_proc$ingreso,
psych::describe(proc_elsoc$ingreso,
quant = c(.25,.75),
IQR = T)
Expand All @@ -255,7 +255,7 @@ Otra manera de obtener todos los estadísticos que necesitamos es utilizando `dp

```{r eval=TRUE}
datos_proc %>%
proc_elsoc %>%
summarise(media = mean(ingreso),
mediana = median(ingreso),
q1 = quantile(ingreso, probs = .25),
Expand Down
Binary file added assignment/output/proc_elsoc.Rdata
Binary file not shown.
Loading

0 comments on commit 1976037

Please sign in to comment.