Skip to content

Instantly share code, notes, and snippets.

@jrosell
Created July 8, 2020 04:46
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jrosell/82728cb145a366b532238fcd1a46383c to your computer and use it in GitHub Desktop.
Save jrosell/82728cb145a366b532238fcd1a46383c to your computer and use it in GitHub Desktop.
---
title: "Impuestos y sueldos por país en Europa"
author: "Jordi Rosell"
date: "2020-06-08"
output:
html_document:
df_print: paged
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
if(!require(tidyverse)) install.packages("tidyverse")
if(!require(patchwork)) install.packages("patchwork")
if(!require(eurostat)) install.packages("eurostat") #require gdal-dev in you system
library(patchwork)
library(tidyverse)
library(eurostat)
library(lubridate)
library(knitr)
```
## Impuestos y sueldos por país en Europa
Comparamos con otros paises la relación de carga impositiva sobre el sueldo con España para determinar si es probable alcanzar una carga impositiva del 40% o superior en España.
### Sueldo promedio
```{r income, warnings = FALSE, message = FALSE}
# search_eurostat("Mean and median income") %>% select(code, title)
income <- get_eurostat("ilc_di04")
income2 <-
income %>%
filter(
hhtyp == "TOTAL",
indic_il == "MEI_E", # Mean equivalised net income
unit == "EUR",
time == "2018-01-01"
) %>%
filter(!grepl("EU|UA|EA", geo)) %>%
select(geo, values) %>%
arrange(desc(values)) %>%
rename(mean_net_income = values)
knitr::kable(income2)
```
### Poporción de impuestos generales sobre PIB
```{r revenue, warnings = FALSE, message = FALSE}
# search_eurostat("Government revenue") %>% select(code, title)
revenue <- get_eurostat("gov_10a_main")
revenue2 <-
revenue %>% filter(
unit == "PC_GDP", # Percentatge GDP
time == "2018-01-01",
sector == "S13", # General government
na_item == "TR" # Total general government revenue
) %>%
filter(!grepl("EU|UA|EA", geo)) %>%
select(geo, values) %>%
arrange(desc(values)) %>%
rename(general_gob_revenue_prop_gdp = values)
knitr::kable(revenue2)
```
### Análisis
Valores no coincidentes:
```{r anti_join, warnings = FALSE, message = FALSE}
income2 %>% distinct(geo) %>% anti_join(distinct(revenue2, geo))
revenue2 %>% distinct(geo) %>% anti_join(distinct(income2, geo))
```
### Resultado
Según los datos, parecería razonable que España pudiera alcancar una carga impositiva superior al 40% del sueldo medio.
```{r resultado, warnings = FALSE, message = FALSE}
income_revenue <- income2 %>% inner_join(revenue2, by = "geo")
spain <- income_revenue %>% filter(geo == "ES")
income_revenue %>%
ggplot(aes(x = mean_net_income, y = general_gob_revenue_prop_gdp)) +
geom_point() +
geom_point(data = spain, colour="red") +
geom_hline(yintercept = 40, colour="blue") +
geom_smooth() +
theme_bw() +
labs(
title = "Impuestos y sueldos por país en Europa",
x = "Sueldo promedio",
y = "Poporción de impuestos generales sobre PIB",
caption ="Fuente: Eurostat. Autor: Jordi Rosell"
)
```
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment