Caricamento librerie:

library(dplyr)
library(ggplot2)
library(gridExtra)
library(stringr)

Parte 1: Dati

Caricamento dati:

Average.wages <- read.csv("Average Wages.csv")
Produttività <- read.csv("Produttività.csv")
salario_minimo <- read.csv("salario_minimo.csv")

Parte 2 : Domanda di ricerca

Si vuole evidenziare che ci sono fortissime correlazioni positive tra produttività del lavoro e salario minimo con il salario medio. In particolare l’indice di correlazione di Pearson tra produttività e salario medio è del 84,9%, mentre tale indice tra salario minimo e salario medio risulta del 94,48% , pertanto al crescere della produttività e del salario minimo cresce il salario medio.

Parte 3: Esplorazione dati

Correlazione produttività del lavoro con salario medio

df1<-Produttività %>%
  filter(Measure=="GDP per hour worked", Unit.of.measure=="US dollars per hour, PPP converted", Price.base=="Constant prices") %>%
  select(Reference.area,TIME_PERIOD, OBS_VALUE)

colnames(df1)[3] <-"Productivity"

df2<- Average.wages %>%
  filter( Unit.of.measure=="US dollars, PPP converted", Price.base=="Constant prices") %>%
  select(Reference.area,TIME_PERIOD,OBS_VALUE)

colnames(df2)[3] <-"Salario_medio"

df3 <- merge(df1,df2, by=c("Reference.area","TIME_PERIOD"))

L’indice di correlazione di Pearson tra produttività e salario medio al prezzo costante (senza la correzione dell’inflazione )è del 84,90% :

cor(df3$Productivity,df3$Salario_medio)
## [1] 0.8490602
df3 %>%
  filter(TIME_PERIOD==2023) %>%
  ggplot(aes(Productivity,Salario_medio)) +
  geom_point()+
  geom_text(aes(label=Reference.area), hjust=-0.2,size=3)+
  stat_smooth(method="lm", formula = 'y ~ x')+
  ylab("Salario medio")+
  xlab("Produttività del lavoro")+
  ggtitle("Produttività del lavoro per salario medio nel 2023", subtitle = "al prezzo costante con relativa retta di regressione")

Negli Stati Uniti, Germania e Francia al crescere della produttività crescono anche i salari ma ciò non accade in Italia e Spagna:

g1<-df1 %>%
  filter(Reference.area %in% c("United States","Germany","France","Spain","Italy"), TIME_PERIOD>1990) %>%
  ggplot(aes(TIME_PERIOD,Productivity, colour=Reference.area))+
 geom_line(linewidth=1)+
 xlab("Anno")+
 ggtitle("Produttività dal 1990 al 2023", subtitle = "al prezzo costante senza inflazione")


g2<-df2 %>%
  filter(Reference.area %in% c("United States","Germany","France","Spain","Italy"), TIME_PERIOD>1990) %>%
  ggplot(aes(TIME_PERIOD,Salario_medio , colour=Reference.area))+
  geom_line(linewidth=1)+
  xlab("Anno")+
  ggtitle("Salario medio dal 1990 al 2023", subtitle = "al prezzo costante senza inflazione")

grid.arrange(g1,g2, nrow=1,ncol=2)

for (country in c("United States","Germany","France","Spain","Italy")) {

  g1<-df1 %>%
  filter(Reference.area==country, TIME_PERIOD>1990) %>%
  ggplot(aes(TIME_PERIOD,Productivity))+
 geom_line(colour="blue")+
 guides(fill="none")+
 xlab("Anno")+
 ggtitle(paste("Produttività in ",country), subtitle = "dal 1990 al 2023")


g2<-df2 %>%
  filter(Reference.area==country, TIME_PERIOD>1990) %>%
  ggplot(aes(TIME_PERIOD,Salario_medio))+
  geom_line(colour="red")+
  guides(fill="none")+
  xlab("Anno")+
  ggtitle(paste("Salario medio in ",country), subtitle = "dal 1990 al 2023")

grid.arrange(g1,g2, nrow=1,ncol=2)
    
}

Correlazione salario minimo con salario medio

df2<- Average.wages %>%
  filter( Unit.of.measure=="Euro", Price.base=="Constant prices") %>%
  select(Reference.area,TIME_PERIOD,OBS_VALUE)

colnames(df2)[2] <- "TIME"
colnames(df2)[3] <- "salario_medio"

df4<-salario_minimo %>%
  filter(currency=="Euro", TIME_PERIOD %in% c("2018-S2","2019-S2","2020-S2","2021-S2","2022-S2","2023-S2")) %>%
  select(geo,TIME_PERIOD,OBS_VALUE )

colnames(df4)[1] <- "Reference.area"
df4$TIME <- as.integer(str_split_fixed(df4$TIME_PERIOD,"-",2)[,1])

colnames(df4)[3] <- "salario_minimo"

df5 <- merge(df4,df2, by=c("Reference.area","TIME"))

#df5$salario_minimo <- as.numeric(df5$salario_minimo)
df5<- df5[-which(is.na(df5$salario_minimo)),]

L’indice di correlazione di Pearson tra salario minimo e salario medio è del 94,48%:

cor(df5$salario_minimo,df5$salario_medio)
## [1] 0.9448291
df5 %>%
  filter(TIME==2023) %>%
  ggplot(aes(salario_minimo,salario_medio)) +
  geom_point()+
  geom_text(aes(label=Reference.area), hjust=-0.2,size=3)+
  stat_smooth(method="lm",formula = 'y ~ x')+
  ylab("Salario medio")+
  xlab("Salario minimo")+
  ggtitle("Salario minimo per salario medio nel 2023", subtitle = "con relativa retta di regressione")