Skip to content

Instantly share code, notes, and snippets.

@DATAUNIRIO
Last active May 1, 2021 15:21
Show Gist options
  • Save DATAUNIRIO/d6afb2af11cebdc4f4cdc0a12f4aa4b7 to your computer and use it in GitHub Desktop.
Save DATAUNIRIO/d6afb2af11cebdc4f4cdc0a12f4aa4b7 to your computer and use it in GitHub Desktop.
#-------------------------------------------------------------------------------------------
# Versão 2 - modificado em 01/05/2021
#-------------------------------------------------------------------------------------------
library(readr)
suicide <- read_csv("github/Base_de_dados/suicide.csv")
names(suicide)
# Pegar o rotulo
library(rworldmap)
data(countryExData)
pais_codigo<-countryExData[,c("ISO3V10","Country")]
colnames(pais_codigo)[2]<-'country'
remove(countryExData)
# juntar o rotulo a sua base de dados
library(dplyr)
pais<- left_join(suicide, pais_codigo,by = "country")
names(pais)
# construindo a informacao para o mapa
suicidios_jovens_mulheres_2010<-pais %>%filter(year==2010,age=='15-24 years', sex=='female')
mapa_da_suicidios_jovens_mulheres_2010 <- joinCountryData2Map(suicidios_jovens_mulheres_2010, joinCode = "ISO3", nameJoinColumn = "ISO3V10")
# o mapa
mapCountryData(mapa_da_suicidios_jovens_mulheres_2010, nameColumnToPlot="suicides_no")
mapCountryData(mapa_da_suicidios_jovens_mulheres_2010, nameColumnToPlot="suicides_no",colourPalette="rainbow",missingCountryCol ="gray" )
#--------------------------------------------------------------------------------------------------------------
# criacao dos indicadores suicidios e suicidio_por_cem_mil_habitantes em 2010
#--------------------------------------------------------------------------------------------------------------
library(janitor)
pais<-clean_names(pais)
variaveis_selecionadas<-c("country","suicides_no","population","hdi_for_year","gdp_for_year","gdp_per_capita","iso3v10")
suicidos_total_2010 <- pais %>%
filter(year==2010) %>%
select(variaveis_selecionadas) %>%
group_by(iso3v10) %>%
summarise(suicidio=sum(suicides_no),
populacao=sum(population),
idh=sum(hdi_for_year)/12,
pib_per_capta=sum(gdp_per_capita)/12,
pib=sum(gdp_for_year)/12)
suicidos_total_2010$suicidio_por_cem_mil_habitantes<-(suicidos_total_2010$suicidio/suicidos_total_2010$populacao)*100000
summary(suicidos_total_2010$suicidio_por_cem_mil_habitantes)
#--------------------------------------------------------------------------------------------------------------
# criacao do mapa
#--------------------------------------------------------------------------------------------------------------
# o join
mapa_do_suicidios_2010 <- joinCountryData2Map(suicidos_total_2010, joinCode = "ISO3", nameJoinColumn = "iso3v10")
library(RColorBrewer)
azul<-brewer.pal(7,"Blues")
vermelho<-brewer.pal(7,"Reds")
purpura<-brewer.pal(7,"Purples")
laranja<-brewer.pal(7,"Oranges")
# o mapa
mapCountryData(mapa_do_suicidios_2010, nameColumnToPlot="suicidio",colourPalette=azul,missingCountryCol ="gray")
mapCountryData(mapa_do_suicidios_2010, nameColumnToPlot="suicidio_por_cem_mil_habitantes",colourPalette=vermelho,missingCountryCol ="gray" )
mapCountryData(mapa_do_suicidios_2010, nameColumnToPlot="pib",colourPalette=purpura,missingCountryCol ="gray" )
mapCountryData(mapa_do_suicidios_2010, nameColumnToPlot="idh",colourPalette=laranja,missingCountryCol ="gray" )
par(mfrow=c(2,2))
mapCountryData(mapa_do_suicidios_2010, nameColumnToPlot="suicidio",colourPalette=azul,missingCountryCol ="gray")
mapCountryData(mapa_do_suicidios_2010, nameColumnToPlot="suicidio_por_cem_mil_habitantes",colourPalette=vermelho,missingCountryCol ="gray" )
mapCountryData(mapa_do_suicidios_2010, nameColumnToPlot="pib",colourPalette=purpura,missingCountryCol ="gray" )
mapCountryData(mapa_do_suicidios_2010, nameColumnToPlot="idh",colourPalette=laranja,missingCountryCol ="gray" )
#-------------------------------------------------------------------------------------------
# Versão 1 - original (dia 24/04/2021)
#-------------------------------------------------------------------------------------------
library(readr)
Suicide <- read_csv("C:/Users/....../Suicide Rates Overview.csv")
names(Suicide)
# Pegar o rotulo
library(rworldmap)
data(countryExData)
pais_codigo<-countryExData[,c("ISO3V10","Country")]
colnames(pais_codigo)[2]<-'country'
remove(countryExData)
# juntar o rotulo a sua base de dados
library(dplyr)
aaa<- left_join(pais_codigo,Suicide, by = "country")
mapa_da_vitoriaj <- joinCountryData2Map(aaa, joinCode = "ISO3", nameJoinColumn = "ISO3V10")
remove(aaa,pais_codigo)
# mostrar funcionamento básico
mapCountryData(mapa_da_vitoriaj, nameColumnToPlot="suicides_no")
mapCountryData(mapa_da_vitoriaj, nameColumnToPlot="age",colourPalette="rainbow")
# Consideracoes
# Observacao para Vitoria:
# acima eu te mostro o funcionamento básico
#O banco de dados tem 27.820 linhas (temos 264 linhas somente com a Albania)
# o banco de dados do mapa tem 243 linhas (cada linha é um pais)
# você precisa resumir os dados por pais antes de juntar ao mapa.
# exemplos:
# mean_suicides<-group_by(pais) %>% summarise(mean_suicides=mean(suicides/100k pop))
# pais_2010<-pais %>%filter(year==2010)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment