#PRACTICA 3 ##I. Tomemos un dataset, y efectuemos las transformaciones necesarias para luego crear las siguientes visualizaciones:
library(tidyverse)
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr 1.1.2 ✔ readr 2.1.4
## ✔ forcats 1.0.0 ✔ stringr 1.5.0
## ✔ ggplot2 3.4.2 ✔ tibble 3.2.1
## ✔ lubridate 1.9.2 ✔ tidyr 1.3.0
## ✔ purrr 1.0.1
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag() masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
Cargamos los datos de la base de datos propuesta Esta base contiene la totalidad de titulares que en algún momento formaron parte del programa del Ministerio de Desarrollo Social de Argentina y recibieron un monto de dinero acreditado en su tarjeta.
DatosP3 <- read_csv("C:/CIENCIA DE DATOS/Sergio R/CLASES/CLASE 3/PRACTICA 3/potenciar-trabajo-listado-titulares-2022-10-01.csv")
## Rows: 1586676 Columns: 11
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (9): sexo, genero, nacionalidad, municipio_id, municipio, provincia_id, ...
## dbl (2): persona_id, edad
##
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
hacemos la seleccion de columnas con las cuales trabajaremos
selecionP3 <- select(DatosP3, -persona_id, -municipio_id,-provincia_id, -departamento_id, -sexo)
descartamos las casillas donde no existe datos
descP3 <- na.omit(selecionP3)
vemos como se encuentra nuestra data set
summary(descP3)
## genero edad nacionalidad municipio
## Length:761494 Min. :19.0 Length:761494 Length:761494
## Class :character 1st Qu.:27.0 Class :character Class :character
## Mode :character Median :35.0 Mode :character Mode :character
## Mean :36.2
## 3rd Qu.:44.0
## Max. :69.0
## provincia departamento
## Length:761494 Length:761494
## Class :character Class :character
## Mode :character Mode :character
##
##
##
###Scatter plot, o gráfico de dispersión: Mostrar correlación entre 2 variables numéricas.
#####y comenzamos a graficar, poniendo a cada visualización su título, subtítulo, etiquetas en los ejes, nombre descriptivo en la leyenda y nota al pie.
agrupamos por provincia y sumamos la columna de edades mayores de 19 puesto que en la planilla no existe menores de 19 se suman todas las edades, es decir el total de los datos existentes por provincia
grup1.P3.1 <- descP3 %>%
filter( edad > 19) %>%
group_by(provincia) %>%
summarise(total = n())
aqui agrupamos por provincia pero sumamos todas las del genero: mujer
grup2.P3.1 <- descP3 %>%
filter( genero == "Mujer") %>%
group_by(provincia) %>%
summarise(mujeres = n())
unimos ambas tablas y ya tenemos nuestra data para iniciar el grafico
GRUP.P3.1 <- grup1.P3.1 %>% left_join(grup2.P3.1)
## Joining with `by = join_by(provincia)`
se filtro los datos menores a dies mil en la columna del total
P3.1 <- filter(GRUP.P3.1, total < 10000)
comenzamos a graficar
ggplot(P3.1) +
geom_point(aes(x = mujeres, y = total, color = factor(provincia), size = total))+
coord_flip() +
labs(title = "Cantidad Titulares por Provincia",
subtitle = "Sector Mujeres", caption = "Fuente: https://www.argentina.gob.ar/desarrollosocial/potenciartrabajo
", x = "mujeres", y = "total", fill = "Tipo")
####Realicemos una versión facetada (con facet_wrap()) de cada tipo de gráfico.
agrupamos por provincia, municipio y sumamos la columna de edades mayores de 19 puesto que en la planilla no existe menores de 19 se suman todas las edades, es decir el total de los datos existentes por provincia
grup3.P3.1 <- descP3 %>%
filter( edad > 19) %>%
group_by(provincia, municipio) %>%
summarise(total = n())
## `summarise()` has grouped output by 'provincia'. You can override using the
## `.groups` argument.
aqui agrupamos por provincia pero sumamos todas las del genero: mujer
grup4.P3.1 <- descP3 %>%
filter( genero == "Mujer") %>%
group_by(provincia) %>%
summarise(mujeres = n())
unimos ambas tablas y ya tenemos nuestra data para iniciar el grafico
GRUP1.P3.1 <- grup3.P3.1 %>% left_join(grup4.P3.1)
## Joining with `by = join_by(provincia)`
se filtro los datos menores a dies mil en la columna del total
P3.1.1 <- filter(GRUP1.P3.1, total > 10000)
se comienza a graficar
ggplot(P3.1.1) +
geom_point(aes(x = mujeres, y = total, color = factor(provincia), size = total))+
facet_wrap(~municipio)+
labs(title = "Cantidad Titulares por Provincia",
subtitle = "Sector Mujeres", caption = "Fuente: https://www.argentina.gob.ar/desarrollosocial/potenciartrabajo
", x = "mujeres", y = "total", fill = "Tipo")
no salio bonito ;(
###Gráfico de Barras: Comparar variables categóricas.
P3.2 <- filter(grup3.P3.1, total > 15000)
ggplot(P3.2) +
geom_bar(aes(x = provincia, weight = total, color = municipio)) +
coord_flip()+
labs(title = "Cantidad Titulares por Provincia",
subtitle = "Total", caption = "Fuente: https://www.argentina.gob.ar/desarrollosocial/potenciartrabajo
", x = "provincia", y = "total", fill = "Tipo") +
theme_minimal()
####Realicemos una versión facetada (con facet_wrap()) de cada tipo de gráfico.
agrupamos por provincia, municipio y sumamos la columna de edades mayores de 19 puesto que en la planilla no existe menores de 19 se suman todas las edades, es decir el total de los datos existentes por provincia
ggplot(P3.2) +
geom_bar(aes(x = municipio, weight = total)) +
facet_wrap(~provincia) +
coord_flip()+
labs(title = "Cantidad Titulares por Provincia",
subtitle = "Total", caption = "Fuente: https://www.argentina.gob.ar/desarrollosocial/potenciartrabajo
", x = "provincia", y = "total", fill = "Tipo")
###Gráfico de Barras: Comparar variables categóricas mostrando la composición interna de las mismas.
tabla_frecuencia <- table(descP3$edad)
barplot(tabla_frecuencia, main = "Edades", xlab = "edad", ylab = "total")
###Histograma: Mostrar la distribución de una variable continua.
ggplot(P3.2) +
geom_histogram(aes(x = total)) +
labs(title = "Cantidad Titulares por Provincia",
subtitle = "Total", caption = "Fuente: https://www.argentina.gob.ar/desarrollosocial/potenciartrabajo
", x = "provincia", y = "total")
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
####Realicemos una versión facetada (con facet_wrap()) de cada tipo de gráfico.
agrupamos por provincia, municipio y sumamos la columna de edades mayores de 19 puesto que en la planilla no existe menores de 19 se suman todas las edades, es decir el total de los datos existentes por provincia
ggplot(P3.2) +
geom_histogram(aes(x = total)) +
facet_wrap(~provincia) +
labs(title = "Cantidad Titulares por Provincia",
subtitle = "Total", caption = "Fuente: https://www.argentina.gob.ar/desarrollosocial/potenciartrabajo
", x = "provincia", y = "total")
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
y comenzamos a graficar, poniendo a cada visualización su título, subtítulo, etiquetas en los ejes, nombre descriptivo en la leyenda y nota al pie.