A taxa de desemprego é considerada uma das análises macroeconômicas mais importantes para um país. Essa taxa se torna ainda mais importante quando um país está passando por uma crise econômica onde há um aumento na taxa de desempregados.
Com a crise que o brasil vem passando nos últimos anos e, agora, com a previsão de que a economia está aos poucos melhorando, é importante analisar se esta melhora e proporcional ou concentrada em algum estado do pais como São Paulo que vem recebendo um êxodo de empresas nos últimos 2 a 3 anos principalmente vindo do estado do Rio de Janeiro.
O objetivo deste trabalho será de analisar um banco de dados com as taxas de admissão e demissão nos municípios do estado do rio de janeiro subdividido de acordo com suas áreas de atuação e verificar se realmente existe um número maior de admissão do que de demissão como seria indicado caso a economia estivesse realmente melhorando.
Além dessa hipótese primária, durante esse estudo haverá mais duas hipóteses secundarias. A primeira seria com relação a área de atuação com a taxa de recuperação menos elevada sendo relacionadas a serviços primários como agricultura e pecuária do que em setores como as indústrias. O motivo para essa diferença seria que eles teriam sido menos afetados pela crise já que os seus produtos são considerados mais essenciais.
A segunda hipótese tem relação aos municípios onde ocorreria a maior taxa de crescimento. Acreditamos que por uma razão de concentração populacional o município do Rio de Janeiro teria uma maior proporção de admissão do que de demissão.
Por uma questão de facilidade visual e prática na análise, ao invés de analisar por municipio foi priorizada a analize por microregião
Os nossos dados foram tirados do Cadastro Geral de Empregados e Desempregados(CAGED).Esse Cadastro foi criado como registro permanente de admissões e dispensa de empregados, sob o regime da Consolidação das Leis do Trabalho (CLT). É utilizado pelo Programa de Seguro-Desemprego, para conferir os dados referentes aos vínculos trabalhistas, além de outros programas sociais.
library(readxl)
dados <- read_excel("dados.xlsx")
razao <- read_excel("razao.xlsx")
dados$Microrregião <- as.factor(dados$Microrregião)
dados$`Município - Rio de Janeiro` <- as.factor(dados$`Município - Rio de Janeiro`)
DT::datatable(dados [1:72, c(1:20)], rownames = FALSE)
# Dados —-
O banco de dados contém os valores quantitativos de admissão e demissão de acordo com as microrregiões e os municípios que fazem parte delas e depois dividido de acordo com a classificação brasileira de ocupação criada pelo Ministério do Trabalho e Emprego. O formato atual dessa classificação foi feito em 2002 e vem sofrendo revisões e atualizações no seu conteúdo. O modelo atual divide todas as profissões em 10 Grandes Grupos(GG), sendo elas:
Uma observação importante é que apesar do número 7 e 8 possuírem o mesmo nome eles são categorias distintas e se referem a profissões completamente diferentes. O 7 representa os trabalhadores de sistemas de produção que focam na forma do produto enquanto o 8 representa os sistemas de produção mais preocupados com a forma físico-químico do produto. Uma segunda observação, é que como as pessoas da categoria 0 são tecnicamente contratados pela União e, portanto, são contratações federais e não no município elas não estão no banco de dados os nas analises utilizadas nesse estudo
O nosso banco de dados possui 92 linhas uma para cada município do estado do Rio de Janeiro. já as colunas são 22. as duas primeiras são com o código numérico das microrregiões e do município. A terceira e a quarta seguem o mesmo princípio das anteriores, mas com o nome delas. A partir da quinta coluna elas passam a expressar o número exato de admissões (colunas impares) e desligamentos (colunas pares) para cada um dos nove grandes grupos analisados nesse estudo e apresentados acima.
Durante esse estudo, a primeira grande barreira enfrentada foi a de tentar comparar todas os dados de acordo com seus municipios ja que a região da capital do estado apresenta um valor muito maior que a das outras regioes o que acaba dificultando a visualização como demonstrado nos gráficos abaixo.
A solução encontrada foi a de tornar as variáveis do banco de dados em razões assim o valor absoluto deixa de prejudicar a visualização gráfica dos dados. O método utilizado para a obtenção dessas razões foi dividir o número de admitidos pelos desligados.Assim, os resultados obtidos podem ser divididos em 4 categorias de resultados.
1 - resultados entre 0 e 1 representam municipios que possuem mais desligados que admitidos.
2 - resultados maiores de 1 representam municipios que possuem mais admitidos que desligados
3 - resultados que deem 0 não possuem admitidos, só desligados
4 - resultados em branco são aqueles que só possuem admitidos
DT::datatable(razao [1:93, c(1:13)], rownames = FALSE)
Infelizmente o Rpub não permite o upload dos mapas diretamente pelo fato dele fato dele ultrapassar o limite máximo de processamento permitido por uma pagina no Rpub, por conta disso os mapas obtidos serão colocados como arquivo png abaixo e o código utilizado para obte-los.
Esses mapas foram feitos utilizando os valores absolutos para tentar ser uma representação o mais proxima possivel dos dados originais.
Mapa 1/GG1 - admitidos
Mapa 2/GG2 - admitidos
Mapa 3/GG3 - admitidos
Mapa 4/GG4 - admitidos
Mapa 5/GG5 - admitidos
Mapa 6/GG6 - admitidos
Mapa 7/GG7 - admitidos
Mapa 8/GG8 - admitidos
Mapa 9/GG9 - admitidos
#codigo para a obtenção dos mapas de admitidos
#muni<- readOGR("H:/estatistica/final/final/RJ-MUN/33MUE250GC_SIR.shp")
#GG1 <- merge(muni,dados,by.x="CD_GEOCODM",by.y="codigo por municipio")
#GG2 <- merge(muni,dados,by.x="CD_GEOCODM",by.y="codigo por municipio")
#GG3 <- merge(muni,dados,by.x="CD_GEOCODM",by.y="codigo por municipio")
#GG4 <- merge(muni,dados,by.x="CD_GEOCODM",by.y="codigo por municipio")
#GG5 <- merge(muni,dados,by.x="CD_GEOCODM",by.y="codigo por municipio")
#GG6 <- merge(muni,dados,by.x="CD_GEOCODM",by.y="codigo por municipio")
#GG7 <- merge(muni,dados,by.x="CD_GEOCODM",by.y="codigo por municipio")
#GG8 <- merge(muni,dados,by.x="CD_GEOCODM",by.y="codigo por municipio")
#GG9 <- merge(muni,dados,by.x="CD_GEOCODM",by.y="codigo por municipio")
#tmap_mode("view")
#tm_shape(GG1) + tm_fill("GG1 - Admitidos", style = "jenks")+ tm_shape(GG2) + tm_fill("GG2 - Admitidos", style = "jenks")+ tm_shape(GG3) + tm_fill("GG3 - Admitidos", style = "jenks")+ tm_shape(GG4) + tm_fill("GG4 - Admitidos", style = "jenks")+ tm_shape(GG5) + tm_fill("GG5 - Admitidos", style = "jenks")+ tm_shape(GG6) + tm_fill("GG6 - Admitidos", style = "jenks")+ tm_shape(GG7) + tm_fill("GG7 - Admitidos", style = "jenks")+ tm_shape(GG8) + tm_fill("GG8 - Admitidos", style = "jenks")+ tm_shape(GG9) + tm_fill("GG9 - Admitidos", style = "jenks")
Segue o mesmo padrão anterior com as imagens obtidas seguido pelo código utilizado patra obte-las mas dessa vez para os demitidos
Mapa 10/GG1 - desligados
Mapa 11/GG2 - desligados
Mapa 12/GG3 - desligados
Mapa 13/GG4 - desligados
Mapa 14/GG5 - desligados
Mapa 15/GG6 - desligados
Mapa 16/GG7 - desligados
Mapa 17/GG8 - desligados
Mapa 18/GG9 - desligados
#código para a obtenção dos mapas dos desligados
#GGd1 <- merge(muni,dados,by.x="CD_GEOCODM",by.y="codigo por municipio")
#GGd2 <- merge(muni,dados,by.x="CD_GEOCODM",by.y="codigo por municipio")
#GGd3 <- merge(muni,dados,by.x="CD_GEOCODM",by.y="codigo por municipio")
#GGd4 <- merge(muni,dados,by.x="CD_GEOCODM",by.y="codigo por municipio")
#GGd5 <- merge(muni,dados,by.x="CD_GEOCODM",by.y="codigo por municipio")
#GGd6 <- merge(muni,dados,by.x="CD_GEOCODM",by.y="codigo por municipio")
#GGd7 <- merge(muni,dados,by.x="CD_GEOCODM",by.y="codigo por municipio")
#GGd8 <- merge(muni,dados,by.x="CD_GEOCODM",by.y="codigo por municipio")
#GGd9 <- merge(muni,dados,by.x="CD_GEOCODM",by.y="codigo por municipio")
#tmap_mode("view")
#tm_shape(GGd1) + tm_fill("GG1 - desligados", style = "jenks")+ tm_shape(GGd2) + tm_fill("GG2 - desligados", style = "jenks")+ tm_shape(GGd3) + tm_fill("GG3 - desligados", style = "jenks")+ tm_shape(GGd4) + tm_fill("GG4 - desligados", style = "jenks")+ tm_shape(GGd5) + tm_fill("GG5 - desligados", style = "jenks")+ tm_shape(GGd6) + tm_fill("GG6 - desligados", style = "jenks")+ tm_shape(GGd7) + tm_fill("GG7 - desligados", style = "jenks")+ tm_shape(GGd8) + tm_fill("GG8 - desligados", style = "jenks")+ tm_shape(GGd9) + tm_fill("GG9 - desligados", style = "jenks")
O proximo passo foi a realização de nove Boxplots um para cada Grupo utilizando as razões obtidas e ilustraddas na tabela 2. O objetivo desses gráficos foi obter uma melhor pespectiva dos valores obtidos. Nesses graficos todos os Boxes que possuam a sua mediana abaixo do valor 1 possuem na sua microrregião mais da metade dos seus municipios com um numero maior de desligamento do que de admitidos. Caso a mediana seja acima de um o oposto é verdadeiro.
dados2<-dados[c(1:88,90:92),]
ggplot(razao) +
aes(x = Microrregião, y = GG1) +
geom_boxplot(fill = "#0c4c8a") +
labs(x = "Microrregiões", y = "ratio", title = "GG1 por Microrregião") +
theme_gray() + theme(axis.text.x = element_text(angle = 90))
## Warning: Removed 18 rows containing non-finite values (stat_boxplot).
ggplot(razao) +
aes(x = Microrregião, y = GG2) +
geom_boxplot(fill = "#0c4c8a") +
labs(x = "Microrregiões", y = "ratio", title = "GG2 por Microrregião") +
theme_gray() + theme(axis.text.x = element_text(angle = 90))
## Warning: Removed 21 rows containing non-finite values (stat_boxplot).
ggplot(razao) +
aes(x = Microrregião, y = GG3) +
geom_boxplot(fill = "#0c4c8a") +
labs(x = "Microrregiões", y = "ratio", title = "GG3 por Microrregião") +
theme_gray() + theme(axis.text.x = element_text(angle = 90))
## Warning: Removed 10 rows containing non-finite values (stat_boxplot).
ggplot(razao) +
aes(x = Microrregião, y = GG4) +
geom_boxplot(fill = "#0c4c8a") +
labs(x = "Microrregiões", y = "ratio", title = "GG4 por Microrregião") +
theme_gray() + theme(axis.text.x = element_text(angle = 90))
## Warning: Removed 5 rows containing non-finite values (stat_boxplot).
ggplot(razao) +
aes(x = Microrregião, y = GG5) +
geom_boxplot(fill = "#0c4c8a") +
labs(x = "Microrregiões", y = "ratio", title = "GG5 por Microrregião") +
theme_gray() + theme(axis.text.x = element_text(angle = 90))
ggplot(razao) +
aes(x = Microrregião, y = GG6) +
geom_boxplot(fill = "#0c4c8a") +
labs(x = "Microrregiões", y = "ratio", title = "GG6 por Microrregião") +
theme_gray() + theme(axis.text.x = element_text(angle = 90))
## Warning: Removed 22 rows containing non-finite values (stat_boxplot).
ggplot(razao) +
aes(x = Microrregião, y = GG7) +
geom_boxplot(fill = "#0c4c8a") +
labs(x = "Microrregiões", y = "ratio", title = "GG7 por Microrregião") +
theme_gray() + theme(axis.text.x = element_text(angle = 90))
## Warning: Removed 4 rows containing non-finite values (stat_boxplot).
ggplot(razao) +
aes(x = Microrregião, y = GG8) +
geom_boxplot(fill = "#0c4c8a") +
labs(x = "Microrregiões", y = "ratio", title = "GG8 por Microrregião") +
theme_gray() + theme(axis.text.x = element_text(angle = 90))
## Warning: Removed 13 rows containing non-finite values (stat_boxplot).
ggplot(razao) +
aes(x = Microrregião, y = GG9) +
geom_boxplot(fill = "#0c4c8a") +
labs(x = "Microrregiões", y = "ratio", title = "GG9 por Microrregião") +
theme_gray() + theme(axis.text.x = element_text(angle = 90))
## Warning: Removed 27 rows containing non-finite values (stat_boxplot).
Modelo1 <- aov (GG1 ~ Microrregião, data = razao)
residuos_Modelo1 <- residuals(Modelo1)
shapiro.test(residuos_Modelo1)
##
## Shapiro-Wilk normality test
##
## data: residuos_Modelo1
## W = 0.74118, p-value = 4.189e-10
razao$Microrregião<-as.factor(razao$Microrregião)
# Teste kruscal wallis
kruskal.test(razao$GG1,razao$Microrregião)
##
## Kruskal-Wallis rank sum test
##
## data: razao$GG1 and razao$Microrregião
## Kruskal-Wallis chi-squared = 21.554, df = 16, p-value = 0.1582
Modelo2 <- aov (GG2 ~ Microrregião, data = razao)
residuos_Modelo2 <- residuals(Modelo2)
shapiro.test(residuos_Modelo2)
##
## Shapiro-Wilk normality test
##
## data: residuos_Modelo2
## W = 0.6008, p-value = 1.346e-12
# Teste kruscal wallis
kruskal.test(razao$GG2,razao$Microrregião)
##
## Kruskal-Wallis rank sum test
##
## data: razao$GG2 and razao$Microrregião
## Kruskal-Wallis chi-squared = 16.962, df = 16, p-value = 0.388
Modelo3 <- aov (GG3 ~ Microrregião, data = razao)
residuos_Modelo3 <- residuals(Modelo3)
shapiro.test(residuos_Modelo3)
##
## Shapiro-Wilk normality test
##
## data: residuos_Modelo3
## W = 0.8648, p-value = 4.053e-07
# Teste kruscal wallis
kruskal.test(razao$GG3,razao$Microrregião)
##
## Kruskal-Wallis rank sum test
##
## data: razao$GG3 and razao$Microrregião
## Kruskal-Wallis chi-squared = 22.713, df = 17, p-value = 0.1588
Modelo4 <- aov (GG4 ~ Microrregião, data = razao)
residuos_Modelo4 <- residuals(Modelo4)
shapiro.test(residuos_Modelo4)
##
## Shapiro-Wilk normality test
##
## data: residuos_Modelo4
## W = 0.9048, p-value = 9.17e-06
# Teste kruscal wallis
kruskal.test(razao$GG4,razao$Microrregião)
##
## Kruskal-Wallis rank sum test
##
## data: razao$GG4 and razao$Microrregião
## Kruskal-Wallis chi-squared = 17.897, df = 17, p-value = 0.3954
Modelo5 <- aov (GG5 ~ Microrregião, data = razao)
residuos_Modelo5 <- residuals(Modelo5)
shapiro.test(residuos_Modelo5)
##
## Shapiro-Wilk normality test
##
## data: residuos_Modelo5
## W = 0.8886, p-value = 1.033e-06
# Teste kruscal wallis
kruskal.test(razao$GG5,razao$Microrregião)
##
## Kruskal-Wallis rank sum test
##
## data: razao$GG5 and razao$Microrregião
## Kruskal-Wallis chi-squared = 24.63, df = 17, p-value = 0.1033
Modelo6 <- aov (GG6 ~ Microrregião, data = razao)
residuos_Modelo6 <- residuals(Modelo6)
shapiro.test(residuos_Modelo6)
##
## Shapiro-Wilk normality test
##
## data: residuos_Modelo6
## W = 0.85376, p-value = 8.83e-07
# Teste kruscal wallis
kruskal.test(razao$GG6,razao$Microrregião)
##
## Kruskal-Wallis rank sum test
##
## data: razao$GG6 and razao$Microrregião
## Kruskal-Wallis chi-squared = 19.509, df = 17, p-value = 0.3001
Modelo7 <- aov (GG7 ~ Microrregião, data = razao)
residuos_Modelo7 <- residuals(Modelo7)
shapiro.test(residuos_Modelo7)
##
## Shapiro-Wilk normality test
##
## data: residuos_Modelo7
## W = 0.75451, p-value = 8.059e-11
# Teste kruscal wallis
kruskal.test(razao$GG7,razao$Microrregião)
##
## Kruskal-Wallis rank sum test
##
## data: razao$GG7 and razao$Microrregião
## Kruskal-Wallis chi-squared = 13.125, df = 17, p-value = 0.7277
Modelo8 <- aov (GG8 ~ Microrregião, data = razao)
residuos_Modelo8 <- residuals(Modelo8)
shapiro.test(residuos_Modelo8)
##
## Shapiro-Wilk normality test
##
## data: residuos_Modelo8
## W = 0.80751, p-value = 9.062e-09
# Teste kruscal wallis
kruskal.test(razao$GG8,razao$Microrregião)
##
## Kruskal-Wallis rank sum test
##
## data: razao$GG8 and razao$Microrregião
## Kruskal-Wallis chi-squared = 18.472, df = 16, p-value = 0.297
Modelo9 <- aov (GG9 ~ Microrregião, data = razao)
residuos_Modelo9 <- residuals(Modelo9)
shapiro.test(residuos_Modelo9)
##
## Shapiro-Wilk normality test
##
## data: residuos_Modelo9
## W = 0.79298, p-value = 3.704e-08
# Teste kruscal wallis
kruskal.test(razao$GG9,razao$Microrregião)
##
## Kruskal-Wallis rank sum test
##
## data: razao$GG9 and razao$Microrregião
## Kruskal-Wallis chi-squared = 23.194, df = 17, p-value = 0.143
Apesar de haver uma grande variedade de dados analisados todos sem exceção apresentaram um sistema de distribuição anormal mas atravéz da analise de Kruskal-Wallis não apresentaram uma diferença significativa
Atravéz desse estudo foi possivel averiguar que realmente existe uma maior quantidade de pessoas admitidas do que desligadas.
Com relação as nossas hipoteses secundárias foi possivel averiguar que não existe uma diferença significativa entre microregiões e entre as categorias do emprego
Uma das maiores dificuldades nesse estudo foi a manipulação do banco de dados, e infelizmente o método utilizado desconsidera certas variáveis ja que ela deixa espaço em branco para os municipios que não possuem desligamentos no periodo do banco de dados. Isso tambem ocorre no mesmo esquema para os municipios que possue só desligamento já que num municipio que possuem 1 desligado e 0 admitidos vai possuir o mesmo valor que um que tenha 1000 desligados e 0 admitidos.
Por conta disso, uma metodologia que consiga incorporar de uma maneira melhor esses valores melhoraria esse estudo e daria mais apoio as conclusões obtidas aqui caso elas sejam equivalentes.