El Informe Mundial de la Felicidad es una encuesta histórica sobre el estado de la felicidad mundial. El informe continúa ganando reconocimiento mundial a medida que los gobiernos, las organizaciones y la sociedad civil utilizan cada vez más indicadores de felicidad para informar sus decisiones de formulación de políticas. Los principales expertos en todos los campos como economía, psicología, análisis de encuestas, estadísticas nacionales, salud, políticas públicas. Describen cómo las mediciones del bienestar se pueden usar de manera efectiva para evaluar el progreso de las naciones.
Los puntajes y clasificaciones de felicidad utilizan datos de la Encuesta mundial de Gallup, obtenidas de la página web Kaggle y se encuentran en el siguiente link https://www.kaggle.com/datasets/ajaypalsinghlo/world-happiness-report-2021?resource=download.
Tomando en cuenta el dataset obtenido se comienza por obtener los países que ocupan los 5 mejores y peores posiciones en la encuesta realizada.
#Agregar el dataset al espacio de trabajo
happiness<- read.csv("C:/Users/Lenovo/Documents/TRABAJO FINAL R/CSV/world-happiness-report-2021-22.csv")
#Generación del dataframe
happiness_frame <- data.frame(happiness)
#Extracción de parte del dataframe - 5 mejores y 5 peores
top_bottom <- happiness_frame[c(1:5,145:149),c(1,3)]
#Extracción de ciertos datos - Nombre y Score
Top_Bottom_Countries <- top_bottom$Country.name
Top_Bottom_Score <- top_bottom$Ladder.score
#Generación del barplot horizontal
ggplot(top_bottom) + geom_bar (aes(x=reorder(Top_Bottom_Countries, Top_Bottom_Score), y= Top_Bottom_Score, fill=Top_Bottom_Score), stat ="identity", show.legend = FALSE) + ggtitle ("World Happiness Record by Country - 2021")+ theme(plot.title =element_text(hjust=0.5)) + theme(axis.text=element_text(size=10), axis.title=element_text(size=10),plot.title=element_text(size=15)) + xlab("Countries") + ylab("Score") + coord_flip()+ scale_fill_gradient(low="yellow", high="orange")
A través del siguiente gráfico podemos espacializar la información presentada en el diagrama de barras horizontal, evidenciamos que los cinco mejores puestos se encuentran ubicados en Europa
#Crear contenedor
contenedor <- leaflet()
#Crear Mapa Base - Open street
mapa_base <- leaflet() %>%
addTiles()
#Mapa
img <-"https://www.r-project.org/logo/Rlogo.svg"
locat_top5 <- data.frame(lugar=c("FINLAND","DENMARK","SWITZERLAND","ICELAND","NETHERLANDS","LESOTHO","BOTSWANA","RWANDA","ZIMBABWE","AFGHANISTAN"),latitud=c(61.959045509468396,55.5690690852674,46.810983516491575,65.0203706074323,52.14456542779506, -29.61847571440903,-22.1587824783575, -1.9957180459558523,-19.00207536538525,33.92539382532929 ), longitud=c(25.879485198901012,10.146249479940135, 7.805431215367384,-18.25750753544188, 5.6186815047851635, 28.183386544295576,24.12446526972815, 29.96264476860521,29.72097336510127, 64.52946767888776),score=c(7.84,7.62,7.57,7.55,7.46, 3.51,3.47,3.42,3.15,2.52),puesto=c(1,2,3,4,5,145,146,147,148,149),color=c("red","red","red","red","red", "blue","blue","blue","blue","blue"))
location_top5 <- leaflet(data=locat_top5) %>%
addTiles() %>%
addMarkers(lat=~latitud,lng=~longitud, popup=paste(sep="<br>","<b>Lugar:</b>",locat_top5$lugar, "<b>Puesto:</b>",locat_top5$puesto, "<b>Score:</b>",locat_top5$score)) %>%
addCircleMarkers(lat=~latitud,lng=~longitud,color=~color,radius=10)
location_top5
Si bien se tiene en cuenta el ranking de los mejores y peores 5 países del Informe Mundial de la Felicidad, se procede a tomar el dato de los países en Sudamérica y el Caribe, dichos datos pueden evidenciar aún más el contexto en el que nos encontramos como país y de los países alrededor asimismo se procede a mostrar el resultado de manera espacializada
#Extracción de parte del dataframe - Países de Sudamérica y el Caribe
sud_countries <- subset(happiness,Regional.indicator=="Latin America and Caribbean")
#Extracción de ciertos datos - Nombre y Score
sudcountries_info <- sud_countries$Country.name
sudscore_info <- sud_countries$Ladder.score
#Generación del barplot horizontal
ggplot(sud_countries) + geom_bar (aes(x=reorder(sudcountries_info, sudscore_info), y= sudscore_info, fill=sudscore_info), stat ="identity", show.legend = FALSE) + ggtitle ("Latin America and Caribbean Happiness Record - 2021")+ theme(plot.title =element_text(hjust=0.5)) + theme(axis.text=element_text(size=10), axis.title=element_text(size=10),plot.title=element_text(size=15)) + xlab("Countries") + ylab("Score") + coord_flip()+ scale_fill_gradient(low="yellow", high="red")
Si bien ya se conoce la información en Sudamérica y el Caribe se propone espacializar esa data a través del siguiente gráfico utilizando GGPLOT2
sud_happiness<- read.csv("C:/Users/Lenovo/Documents/TRABAJO FINAL R/CSV/world-happiness-report-2021-22-sudd.csv")
#Creación de data frame
sud_frame <- data.frame(sud_happiness)
#separar datos del data frame
suddata_countries <- subset(sud_frame,Regional.indicator=="Latin America and Caribbean")
#juntar info en ambos datasets a partir de la columna region
mapdata <- map_data("world") #ver info alrededor del mundo
mapdata <- left_join(mapdata,suddata_countries,by="region")
#Seleccionar sólo los datos que cumplen con la columna Ladder.Score
mapdata1 <- mapdata %>% filter(!is.na(mapdata$Ladder.score))
#Generar mapa
ggplot(mapdata1, aes(x=long, y=lat, group=group))+
geom_polygon(aes(fill=Ladder.score), color = "black")+
scale_fill_gradient(name = "Score", low ="yellow", high = "red" ,na.value="grey50")+
theme(axis.text.x = element_blank(),
axis.text.y = element_blank(),
axis.ticks = element_blank(),
axis.title.y = element_blank(),
axis.title.x = element_blank(),
rect= element_blank())