Explicación del proyecto:

· Razonamiento de las variables seleccionadas: ¿cuál es la motivación de nuestro estudio?
Este proyecto trata de demostrar o comprobar que hay una alta relación entre el nivel de satisfacción personal (extraído de un test de satisfacción que va desde el cero al diez) y la confianza política (extraído de otro test de cero a diez).
¿por qué hemos seleccionado estas variables?
Porque normalmente siempre se busca respuesta en variables psicológicas que parten del consciente en lugar del subconsciente y el mundo físico (nº de casos de corrupción, medios de comunicación de la oposición, etc).
· Razonamiento de la causalidad entre variables (hipótesis): ¿por qué creemos que las variables escogidas están asociadas?
Esta relación está basada en el concepto psicológico “It is weakness which breeds fear, and fear breeds distrust” (Es la debilidad lo que genera miedo y el miedo lo que genera desconfianza) de Mahatma Gandhi.  Por lo que cuando a la gente le va peor tiene miedo del sistema y desconfía. Pero cuando le va mejor, se olvida, confía en el sistema político creando miedo al cambio y la desconfianza a los que critican la política.
¿qué esperamos encontrar?
Espero encontrar el grado de dependencia entre las dos variables y conocer si se tiene que estudiar otras variables que expliquen la desconfianza política.
¿por qué creemos que una causa la otra?
La felicidad de una persona depende de dirección que tome y en que se focalice. La política es uno de miles de enfoques que puede tener una persona. Por lo que solamente en los pocos casos donde alguien le de mucha importancia a la política la relación podría ser inversa (que un nivel alto de confianza ofrezca un alto nivel de felicidad).

Instalación de las librerias:

#PAQUETE DE DATOS
install.packages(c("gganimate", "ggplot2", "gifski", "tidyr", "essurvey"))
library(dplyr)
library(tidyr)
library(ggplot2)
library (gganimate)
library(gifski)
library(essurvey)
set_email("pcabanesp@uoc.edu")
# BASE DE DATOS DE ESPAÑA
Country <- import_all_cntrounds("Spain")

Creación de la base de datos_

#UTILIZO UN PATRON PARA EXTRAER LOS DATOS------------------
R1 <- select(Country[[1]], cntry,stflife, trstplt)
R2 <- select(Country[[2]], cntry,stflife, trstplt)
R3 <- select(Country[[3]], cntry,stflife, trstplt)
R4 <- select(Country[[4]], cntry,stflife, trstplt)
R5 <- select(Country[[5]], cntry,stflife, trstplt)
R6 <- select(Country[[6]], cntry,stflife, trstplt)
R7 <- select(Country[[7]], cntry,stflife, trstplt)
R8 <- select(Country[[8]], cntry,stflife, trstplt)
R1_R2 <- bind_rows(año2002 = R1, año2004= R2, .id = "AÑO")
R3_R4 <- bind_rows(año2006 = R3, año2008= R4, .id = "AÑO")
R5_R6 <- bind_rows(año2010 = R5, año2012= R6, .id = "AÑO")
R7_R8 <- bind_rows(año2014 = R7, año2016= R8, .id = "AÑO")
R1234 <- union(R1_R2, R3_R4)
R5678 <- union(R5_R6, R7_R8)
#---------------------------------------------------------
España <- union (R1234, R5678)
# BASE DE DATOS DE ALEMANIA
Country <- import_all_cntrounds("Germany")
#REPITO EL PATRON-----------------------------------------
R1 <- select(Country[[1]], cntry,stflife, trstplt)
R2 <- select(Country[[2]], cntry,stflife, trstplt)
R3 <- select(Country[[3]], cntry,stflife, trstplt)
R4 <- select(Country[[4]], cntry,stflife, trstplt)
R5 <- select(Country[[5]], cntry,stflife, trstplt)
R6 <- select(Country[[6]], cntry,stflife, trstplt)
R7 <- select(Country[[7]], cntry,stflife, trstplt)
R8 <- select(Country[[8]], cntry,stflife, trstplt)
R1_R2 <- bind_rows(año2002 = R1, año2004= R2, .id = "AÑO")
R3_R4 <- bind_rows(año2006 = R3, año2008= R4, .id = "AÑO")
R5_R6 <- bind_rows(año2010 = R5, año2012= R6, .id = "AÑO")
R7_R8 <- bind_rows(año2014 = R7, año2016= R8, .id = "AÑO")
R1234 <- union(R1_R2, R3_R4)
R5678 <- union(R5_R6, R7_R8)
#---------------------------------------------------------
Alemania <- union (R1234, R5678)
# BASE DE DATOS DE NORUEGA
Country <- import_all_cntrounds("Norway")
#REPITO EL PATRON-----------------------------------------
R1 <- select(Country[[1]], cntry,stflife, trstplt)
R2 <- select(Country[[2]], cntry,stflife, trstplt)
R3 <- select(Country[[3]], cntry,stflife, trstplt)
R4 <- select(Country[[4]], cntry,stflife, trstplt)
R5 <- select(Country[[5]], cntry,stflife, trstplt)
R6 <- select(Country[[6]], cntry,stflife, trstplt)
R7 <- select(Country[[7]], cntry,stflife, trstplt)
R8 <- select(Country[[8]], cntry,stflife, trstplt)
R1_R2 <- bind_rows(año2002 = R1, año2004= R2, .id = "AÑO")
R3_R4 <- bind_rows(año2006 = R3, año2008= R4, .id = "AÑO")
R5_R6 <- bind_rows(año2010 = R5, año2012= R6, .id = "AÑO")
R7_R8 <- bind_rows(año2014 = R7, año2016= R8, .id = "AÑO")
R1234 <- union(R1_R2, R3_R4)
R5678 <- union(R5_R6, R7_R8)
#---------------------------------------------------------
Noruega <- union (R1234, R5678)
rm (Country,R1,R2,R3,R4,R5,R6,R7,R8,R1_R2,R3_R4,R5_R6,R7_R8,R1234,R5678)
#UNO LAS BASES DE DATOS DE LOS TRES PAÍSES.
Bd <-union (Alemania, union(España, Noruega)) %>%
  #ELIMINO POSIBLES VALORES NULOS
  filter(stflife != is.na(stflife), trstplt != is.na(trstplt)) %>%
  #ELIMINO LAS RESPUESTAS QUE NO APORTAN INFORMACIÓN (77-refusal, 88-don't know, 99-no answer)
  filter (stflife %in% c(0,1,2,3,4,5,6,7,8,9,10))%>%
  filter (trstplt %in% c(0,1,2,3,4,5,6,7,8,9,10))%>%
  rename(c("PAIS" = cntry,
           "FELICIDAD" = stflife, 
           "CONFIANZA_POLÍTICA" = trstplt))%>%
  mutate (AÑO = case_when(
    AÑO == "año2002" ~ 2002,
    AÑO == "año2004" ~ 2004,
    AÑO == "año2006" ~ 2006,
    AÑO == "año2008" ~ 2008,
    AÑO == "año2010" ~ 2010,
    AÑO == "año2012" ~ 2012,
    AÑO == "año2014" ~ 2014,
    AÑO == "año2016" ~ 2016))
rm (Alemania, España, Noruega)

Gráficas:

Gráfica de la sensación de felicidad y la confianza en la política.

En esta gráfica se muestra la relación entre la variable independiente “grado de felicidad de las personas con su vida” (eje de las x’s) yla variable dependiente “el grado de confianza política” (eje de las y’s).
Del conjunto de gente que se ha identificado con un nivel de felicidad se muestra una columna de puntos que representan el nivel de confianza en la política. Y en esta columna hay grafiado la media de esta columna de puntos junto con su error típico (en una corta linea vertical). También he grafiado la línea de regresión con OLS de todos los datos.
Por lo que podemos observar:
Forma lineal: Nos denota una relación directa factorial en lugar de exponencial.
Poca fuerza: Hay mucha dispersión, por lo que hay una relación débil.
Dirección positiva: Las dos variables se mueven en la misma dirección (directamente relacionada, en lugar de inversamente).
Casos extremos: En las 3 gráficas de la figura 1 he grafiado con un triángulo rectángulo una zona de poca concentración de puntos con valores extremos que parece repetirse como un patrón en los tres países. De aquí podemos concluir que cuando el nivel de felicidad generalizado desciende hay menor número de personas que sigan creyendo en la política. Pero no obstante no se crea el mismo triangulo en la esquina opuesta, por lo que no podemos decir que si el nivel de felicidad es muy alta crecerá mucho el nivel de confianza.

Bd%>%
  mutate (PAIS = case_when(
    PAIS == "DE" ~ "Alemania",
    PAIS == "ES" ~ "España",
    PAIS == "NO" ~ "Noruega"))%>%
  ggplot(aes(x = FELICIDAD, y = CONFIANZA_POLÍTICA, col = PAIS)) +
  geom_point(position = position_jitter(width = 0.2)) + stat_summary(geom = "point", fun.data = mean_se, col= "red", size = 1.2) +
  geom_smooth(method = "lm", se = T) +
  stat_summary(geom = "errorbar", fun.data = mean_se, col = "red", width = 0.1) + theme_classic() +
  facet_wrap(. ~ PAIS, scales = "free") +
  labs(title = "Relación entre la sensación de felicidad y la confianza política")
## `geom_smooth()` using formula 'y ~ x'

Gráfica animada según años:

En esta gráfica podemos observar en algunos años y países que en lugar de una forma lineal se muestra una forma más escalonada o estratificada, que podría indicar una creencia y credibilidad política generalizada según grupo social como podría ser el caso de Noruega en el 2006 y 2016 o en Alemania en el 2002.

Animación <- Bd%>%
  ggplot(aes(x = FELICIDAD, y = CONFIANZA_POLÍTICA, col = PAIS)) +
  geom_point(position = position_jitter(width = 0.2)) + stat_summary(geom = "point", fun.data = mean_se, col= "red", size = 1.2) +
  stat_summary(geom = "errorbar", fun.data = mean_se, col = "red", width = 0.1) + theme_classic() +
  facet_wrap(. ~ PAIS, scales = "free") +
  transition_time(AÑO) +
  labs(title = "AÑO: {frame_time}", x = 'FELICIDAD', y = 'CONFIANZA POLÍTICA')
animate(Animación, nframes = 8, fps=1)

Cuantificación

Reducción de la Base de datos sintetizando las cifras con sus medias.

En esta tabla se puede tener una visión general en una tabla de contingencia entre la variable año y la variable país, pero en lugar de realizar un conteo he indicado qué valor de confianza le corresponde al nivel medio de felicidad. Por lo que nos ofrece una pequeña muestra de visión general de este efecto a nivel internacional.

FELICIDAD <- Bd%>%
  group_by(PAIS,AÑO)%>%
  select(AÑO, PAIS, FELICIDAD)%>%
  summarize(FELICIDAD = mean(FELICIDAD))%>%
  spread(PAIS, FELICIDAD)%>%
  rename(c("F_DE" = DE,"F_ES" = ES, "F_NO" = NO))%>%
  round(2)
CONFIANZA <- Bd%>%
  group_by(PAIS,AÑO)%>%
  select(AÑO, PAIS, CONFIANZA_POLÍTICA)%>%
  summarize(CONFIANZA_POLÍTICA = mean(CONFIANZA_POLÍTICA))%>%
  spread(PAIS, CONFIANZA_POLÍTICA)%>%
  rename(c("C_DE" = DE, "C_ES" = ES, "C_NO" = NO))%>%
  round(2)
TABLA_RELAC_FELIC_Y_CONF <- full_join(FELICIDAD, CONFIANZA) %>%
  select(AÑO, F_DE, C_DE,F_NO,C_NO,F_ES, C_ES)%>%
  unite(ALEMANIA, F_DE, C_DE, sep= "->")%>%
  unite(ESPAÑA, F_ES, C_ES, sep= "->")%>%
  unite(NORUEGA, F_NO, C_NO, sep= "->")
## Joining, by = "AÑO"
TABLA_RELAC_FELIC_Y_CONF
## # A tibble: 8 x 4
##     AÑO ALEMANIA   NORUEGA    ESPAÑA    
##   <dbl> <chr>      <chr>      <chr>     
## 1  2002 5.88->4.8  6.19->4.75 5.88->5   
## 2  2004 5.85->4.94 6.03->4.76 6.12->4.74
## 3  2006 5.75->4.85 6.22->4.91 6.04->4.91
## 4  2008 5.6->4.97  6.04->4.81 6.11->4.86
## 5  2010 5.88->4.98 6.21->5.03 6.29->4.54
## 6  2012 5.79->5    6.44->5.12 6.26->4.65
## 7  2014 5.93->4.73 6.29->5.16 6.14->4.88
## 8  2016 5.95->5    6.35->5.25 6.46->4.79

Correlación entre la sensación de tener una vida feliz y la confianza en la política.

De esta operación se puede observar que tras buscar la correlación entre variables se obtiene un valor de 0,161, por lo que:
Fuerza: Nos confirma que tiene poca fuerza. Un 16% de fuerza o de correlación.
Dirección: El signo positivo nos confirma que la relación es directamente proporcional (no inversamente).

Bd %>%
  summarize (cor = cor(FELICIDAD, CONFIANZA_POLÍTICA))
## # A tibble: 1 x 1
##     cor
##   <dbl>
## 1 0.161

Modelación y test de significación:

En este punto, tal y como se observa tras modelar los datos en una función y aplicar summary:
- La función que representa la relación es:
Creencia en la política = 0.85402 + 0.47501 * El grado de satisfacción de la gente con su vida.
Siendo:
La constante = 0.85402 y la pendiente 0.47501
- El valor p-value (Pr(>|t|)) en el resultado del test de significación obtenemos el valor de 9.891e-13, que es inferior a 0.05 (baremo estandarizado en las ciencias sociales), por lo que podremos descartar la hipótesis nula y descartar el efecto del azar por lo que podemos decir que el resultado podría ser en un 95% significante y que ambas variables guardan algún tipo de relación.

Bd %>%
  mutate(AÑO = as.character(AÑO))%>%
  lm(formula = CONFIANZA_POLÍTICA ~ FELICIDAD)%>%
  summary ()
## 
## Call:
## lm(formula = CONFIANZA_POLÍTICA ~ FELICIDAD, data = .)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -4.5169 -2.2569 -0.0994  2.1131  5.7431 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  3.94187    0.14559   27.08  < 2e-16 ***
## FELICIDAD    0.15750    0.02194    7.18 9.89e-13 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 2.608 on 1929 degrees of freedom
## Multiple R-squared:  0.02603,    Adjusted R-squared:  0.02553 
## F-statistic: 51.56 on 1 and 1929 DF,  p-value: 9.891e-13