Barrios ricos y pobres
Me sorprendió la información sobre los barrios y la correlación que apareció en una notícia. Así que aquí rehago los graficos a partir de los datos descargados de la notícia:
eco <- read.csv(here::here("static", "data-dLHsB.csv"), check.names = FALSE)
Primer gráfico
Con los datos descargados he reproducio la primera gráfica, con la única excepción que no he usado el IPC. En vez del IPC he puesto la mediana del incremento.
- En primer lugar porque el IPC varia cada año, y aquí estamos mirando el cambio en 4 años.
- En segundo lugar, porque el gráfico se usa para enseñar que las rentas más bajas no progresan tanto como las más altas. Y creo que para comparar el progreso en los diferentes percentiles hay que mirar la mediana:
library("ggplot2")
library("scales")
library("plotly")
##
## Attaching package: 'plotly'
## The following object is masked from 'package:ggplot2':
##
## last_plot
## The following object is masked from 'package:stats':
##
## filter
## The following object is masked from 'package:graphics':
##
## layout
p1 <- ggplot(data = eco) +
geom_violin(aes(Grupo, `Variación 2013-2017 (%)`, col = Grupo)) +
geom_jitter(aes(Grupo, `Variación 2013-2017 (%)`, col = Grupo,
text = paste("Barrio:", Nombre, "\nMunicipio:", Municipio))) +
geom_abline(intercept = median(eco$`Variación 2013-2017 (%)`), slope = 0,
col = "red") +
scale_color_viridis_d() +
guides(col = FALSE) +
theme_minimal()
## Warning: Ignoring unknown aesthetics: text
ggplotly(p1, tooltip = c("text", "x", "y"), layerData = 3)
Tanto el grupo más pobre como los más ricos estan por encima de la mediana mayoritariamente.
Segundo gráfico
El segundo gráfico parece indicar una correlación positiva. Ahora bien, cuando lo reproducimos, podemos ver que hay mucha incerteza
p2 <- eco %>%
ggplot(aes(`Renta bruta media 2013 (euros)`, `Variación 2013-2017 (%)`)) +
geom_point(aes(text = paste("Barrio:", Nombre, "\nMunicipio:", Municipio))) +
geom_smooth(method = "lm") +
guides(col = FALSE) +
scale_x_continuous(labels = dollar_format(suffix = "€", prefix = ""),
breaks = c(12000, 20000, 50000, 100000)) +
# from https://stackoverflow.com/a/32265122/2886003
theme_bw()
## Warning: Ignoring unknown aesthetics: text
ggplotly(p2)
## `geom_smooth()` using formula 'y ~ x'
Podemos ver que la correlación no és muy buena, tal y como confirma el test:
cor.test(eco[, 6], eco[, 4])
##
## Pearson's product-moment correlation
##
## data: eco[, 6] and eco[, 4]
## t = 11.811, df = 519, p-value < 2.2e-16
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
## 0.389772 0.525395
## sample estimates:
## cor
## 0.4602647
Sobretodo está el barrio de La Moraleja que induce a error:
eco %>%
lm(`Variación 2013-2017 (%)` ~ `Renta bruta media 2013 (euros)`, data = .) %>%
broom::tidy()
## # A tibble: 2 x 5
## term estimate std.error statistic p.value
## <chr> <dbl> <dbl> <dbl> <dbl>
## 1 (Intercept) 1.11 0.623 1.79 7.48e- 2
## 2 `Renta bruta media 2013 (euros)` 0.000246 0.0000208 11.8 1.12e-28
eco %>%
filter(Nombre != "28109-La Moraleja") %>%
lm(`Variación 2013-2017 (%)` ~ `Renta bruta media 2013 (euros)`, data = .) %>%
broom::tidy()
## # A tibble: 2 x 5
## term estimate std.error statistic p.value
## <chr> <dbl> <dbl> <dbl> <dbl>
## 1 (Intercept) 0.436 0.684 0.636 5.25e- 1
## 2 `Renta bruta media 2013 (euros)` 0.000271 0.0000233 11.6 6.28e-28
Como se puede ver al remover La Moraleja, esta tendencia és superior. En resumen no veo tan claro que solo los barrios ricos hayan augmentado su renta media.
References
Reproducibility
## ─ Session info ───────────────────────────────────────────────────────────────────────────────────────────────────────
## setting value
## version R version 4.0.1 (2020-06-06)
## os Ubuntu 20.04.1 LTS
## system x86_64, linux-gnu
## ui X11
## language (EN)
## collate en_US.UTF-8
## ctype en_US.UTF-8
## tz Europe/Madrid
## date 2021-01-08
##
## ─ Packages ───────────────────────────────────────────────────────────────────────────────────────────────────────────
## package * version date lib source
## assertthat 0.2.1 2019-03-21 [1] CRAN (R 4.0.1)
## backports 1.2.1 2020-12-09 [1] CRAN (R 4.0.1)
## blogdown 0.21.84 2021-01-07 [1] Github (rstudio/blogdown@c4fbb58)
## bookdown 0.21 2020-10-13 [1] CRAN (R 4.0.1)
## broom 0.7.3 2020-12-16 [1] CRAN (R 4.0.1)
## Cairo 1.5-12.2 2020-07-07 [1] CRAN (R 4.0.1)
## cli 2.2.0 2020-11-20 [1] CRAN (R 4.0.1)
## colorspace 2.0-0 2020-11-11 [1] CRAN (R 4.0.1)
## crayon 1.3.4 2017-09-16 [1] CRAN (R 4.0.1)
## crosstalk 1.1.0.1 2020-03-13 [1] CRAN (R 4.0.1)
## data.table 1.13.4 2020-12-08 [1] CRAN (R 4.0.1)
## digest 0.6.27 2020-10-24 [1] CRAN (R 4.0.1)
## dplyr 1.0.2 2020-08-18 [1] CRAN (R 4.0.1)
## ellipsis 0.3.1 2020-05-15 [1] CRAN (R 4.0.1)
## evaluate 0.14 2019-05-28 [1] CRAN (R 4.0.1)
## fansi 0.4.1 2020-01-08 [1] CRAN (R 4.0.1)
## generics 0.1.0 2020-10-31 [1] CRAN (R 4.0.1)
## ggplot2 * 3.3.2 2020-06-19 [1] CRAN (R 4.0.1)
## glue 1.4.2 2020-08-27 [1] CRAN (R 4.0.1)
## gtable 0.3.0 2019-03-25 [1] CRAN (R 4.0.1)
## here 1.0.1 2020-12-13 [1] CRAN (R 4.0.1)
## htmltools 0.5.0 2020-06-16 [1] CRAN (R 4.0.1)
## htmlwidgets 1.5.3 2020-12-10 [1] CRAN (R 4.0.1)
## httr 1.4.2 2020-07-20 [1] CRAN (R 4.0.1)
## jsonlite 1.7.2 2020-12-09 [1] CRAN (R 4.0.1)
## knitcitations * 1.0.10 2019-09-15 [1] CRAN (R 4.0.1)
## knitr 1.30 2020-09-22 [1] CRAN (R 4.0.1)
## labeling 0.4.2 2020-10-20 [1] CRAN (R 4.0.1)
## lattice 0.20-41 2020-04-02 [1] CRAN (R 4.0.1)
## lazyeval 0.2.2 2019-03-15 [1] CRAN (R 4.0.1)
## lifecycle 0.2.0 2020-03-06 [1] CRAN (R 4.0.1)
## lubridate 1.7.9.2 2020-11-13 [1] CRAN (R 4.0.1)
## magrittr 2.0.1 2020-11-17 [1] CRAN (R 4.0.1)
## Matrix 1.2-18 2019-11-27 [1] CRAN (R 4.0.1)
## mgcv 1.8-33 2020-08-27 [1] CRAN (R 4.0.1)
## munsell 0.5.0 2018-06-12 [1] CRAN (R 4.0.1)
## nlme 3.1-151 2020-12-10 [1] CRAN (R 4.0.1)
## pillar 1.4.7 2020-11-20 [1] CRAN (R 4.0.1)
## pkgconfig 2.0.3 2019-09-22 [1] CRAN (R 4.0.1)
## plotly * 4.9.2.1 2020-04-04 [1] CRAN (R 4.0.1)
## plyr 1.8.6 2020-03-03 [1] CRAN (R 4.0.1)
## purrr 0.3.4 2020-04-17 [1] CRAN (R 4.0.1)
## R6 2.5.0 2020-10-28 [1] CRAN (R 4.0.1)
## Rcpp 1.0.5 2020-07-06 [1] CRAN (R 4.0.1)
## RefManageR 1.3.0 2020-11-13 [1] CRAN (R 4.0.1)
## rlang 0.4.10 2020-12-30 [1] CRAN (R 4.0.1)
## rmarkdown 2.6 2020-12-14 [1] CRAN (R 4.0.1)
## rprojroot 2.0.2 2020-11-15 [1] CRAN (R 4.0.1)
## scales * 1.1.1 2020-05-11 [1] CRAN (R 4.0.1)
## sessioninfo 1.1.1 2018-11-05 [1] CRAN (R 4.0.1)
## stringi 1.5.3 2020-09-09 [1] CRAN (R 4.0.1)
## stringr 1.4.0 2019-02-10 [1] CRAN (R 4.0.1)
## tibble 3.0.4 2020-10-12 [1] CRAN (R 4.0.1)
## tidyr 1.1.2 2020-08-27 [1] CRAN (R 4.0.1)
## tidyselect 1.1.0 2020-05-11 [1] CRAN (R 4.0.1)
## utf8 1.1.4 2018-05-24 [1] CRAN (R 4.0.1)
## vctrs 0.3.6 2020-12-17 [1] CRAN (R 4.0.1)
## viridisLite 0.3.0 2018-02-01 [1] CRAN (R 4.0.1)
## withr 2.3.0 2020-09-22 [1] CRAN (R 4.0.1)
## xfun 0.20 2021-01-06 [1] CRAN (R 4.0.1)
## xml2 1.3.2 2020-04-23 [1] CRAN (R 4.0.1)
## yaml 2.2.1 2020-02-01 [1] CRAN (R 4.0.1)
##
## [1] /home/lluis/bin/R/4.0.1/lib/R/library