O Objetivo dessa pesquisa é analisar a correlação entre a riqueza dos estados brasileiros com seu nível de qualidade de vida.
Para isso, serão utliizados os dados de participação percentual de cada estado no PIB brasileiro assim com o IDH. A escolha pelo percentual do PIB se dá por representar em uma escala simples, a de porcentagem a proporção da riqueza entre os diferentes estados, indicando de forma sucinta a riqueza relativa entre eles. Enquanto isso, a escolha do IDH como indicador de qualidade de vida foi feita por ser o principal indicador de bem estar usado globalmente, sendo um indicador calculado a partir do PIB per capita, do nível de escolaridade e da expectativa de vida.
Os dados da participação percentual do PIB serão retirados do instituto de pesquisa do governo do estado de São Paulo, o SEADE, enquanto o IDH estadual será obtido através da plataforma Atlas Brasil.
O primeiro passo a ser realizado é o download dos dados relacionados ao PIB estadual a partir da plataforma do SEADE. Tais dados estão na tabela 28 da planilha do Repositório SEADE e são agrupados por ano, de 2003 até 2021 até o momento.

Importando as bibliotecas necessárias para a pesquisa

A bases de dados que serão utilizadas precisarão de algumas bibliotecas que serão utilizadas que não estão ativas no R naturalmente e portanto precisarão ser importadas.

library(geojsonio)
## Registered S3 method overwritten by 'geojsonsf':
##   method        from   
##   print.geojson geojson
## 
## Anexando pacote: 'geojsonio'
## O seguinte objeto é mascarado por 'package:base':
## 
##     pretty
library(httr)
library(dplyr)
## 
## Anexando pacote: 'dplyr'
## Os seguintes objetos são mascarados por 'package:stats':
## 
##     filter, lag
## Os seguintes objetos são mascarados por 'package:base':
## 
##     intersect, setdiff, setequal, union
library(tidyr)
library(readxl)
library(tibble)
library(plotly)
## Carregando pacotes exigidos: ggplot2
## 
## Anexando pacote: 'plotly'
## O seguinte objeto é mascarado por 'package:ggplot2':
## 
##     last_plot
## O seguinte objeto é mascarado por 'package:httr':
## 
##     config
## O seguinte objeto é mascarado por 'package:stats':
## 
##     filter
## O seguinte objeto é mascarado por 'package:graphics':
## 
##     layout
library(googlesheets4)


## Importando os dados do SEADE
Com as bibliotecas já obtidas, o próximo passo é obter os dados do SEADE.

link="https://repositorio.seade.gov.br/dataset/5d499216-d441-4336-b4cb-92cd660a0cb8/resource/b4ba3d08-0b7d-4fb8-a507-6cc1bf86193f/download/tabelas_2020.xlsx"
GET(link, write_disk("tabelas_2020.xlsx", overwrite=TRUE))
## Response [https://repositorio.seade.gov.br/dataset/5d499216-d441-4336-b4cb-92cd660a0cb8/resource/b4ba3d08-0b7d-4fb8-a507-6cc1bf86193f/download/tabelas_2020.xlsx]
##   Date: 2024-09-14 14:57
##   Status: 200
##   Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
##   Size: 287 kB
## <ON DISK>  C:\Users\danye\Downloads\tabelas_2020.xlsx
Tabela=read_excel("tabelas_2020.xlsx", sheet="Tabela 28")
## New names:
## • `` -> `...2`
## • `` -> `...3`
## • `` -> `...4`
## • `` -> `...5`
## • `` -> `...6`
## • `` -> `...7`
## • `` -> `...8`
## • `` -> `...9`
## • `` -> `...10`
## • `` -> `...11`
## • `` -> `...12`
## • `` -> `...13`
## • `` -> `...14`
## • `` -> `...15`
## • `` -> `...16`
## • `` -> `...17`
## • `` -> `...18`
## • `` -> `...19`
## • `` -> `...20`
## • `` -> `...21`
Tabela
## # A tibble: 37 × 21
##    Tabela 28 - Participa…¹     ...2     ...3     ...4     ...5     ...6     ...7
##    <chr>                      <dbl>    <dbl>    <dbl>    <dbl>    <dbl>    <dbl>
##  1 Brasil, 2002-2021, em %   NA       NA       NA       NA       NA       NA    
##  2 <NA>                      NA       NA       NA       NA       NA       NA    
##  3 Regiões e Unidades da … 2002     2003     2004     2005     2006     2007    
##  4 BRASIL                   100      100      100      100      100      100    
##  5 Norte                      4.70     4.75     4.96     4.91     5.04     4.99 
##  6 Rondônia                   0.502    0.549    0.562    0.576    0.542    0.531
##  7 Acre                       0.200    0.197    0.193    0.198    0.193    0.201
##  8 Amazonas                   1.48     1.51     1.59     1.57     1.66     1.60 
##  9 Roraima                    0.161    0.151    0.144    0.147    0.158    0.155
## 10 Pará                       1.78     1.76     1.90     1.87     1.91     1.91 
## # ℹ 27 more rows
## # ℹ abbreviated name:
## #   ¹​`Tabela 28 - Participação das Grandes Regiões e Unidades da Federação no Produto Interno Bruto`
## # ℹ 14 more variables: ...8 <dbl>, ...9 <dbl>, ...10 <dbl>, ...11 <dbl>,
## #   ...12 <dbl>, ...13 <dbl>, ...14 <dbl>, ...15 <dbl>, ...16 <dbl>,
## #   ...17 <dbl>, ...18 <dbl>, ...19 <dbl>, ...20 <dbl>, ...21 <dbl>


Como pode se notar, a tabela precisa de um tratamento, pois contém os dados nacionais e regionais que não utilizaremos nessa pesquisa, células vazias, colunas com índices que não geram informações relevantes etc. Vamos, portanto, realizar uma limpeza nos dados.

Nomes=as.character(Tabela[3, ])
Tabela=Tabela[-3, ]
colnames(Tabela)=Nomes
rownames(Tabela)=NULL
Sigla=c('Acre'='AC','Alagoas'='AL','Amapá'='AP','Amazonas'='AM','Bahia'='BA','Ceará'='CE','Distrito Federal'='DF','Espírito Santo'='ES','Goiás'='GO','Maranhão'='MA','Mato Grosso'='MT','Mato Grosso do Sul'='MS','Minas Gerais'='MG','Pará'='PA','Paraíba'='PB','Paraná'='PR','Pernambuco'='PE','Piauí'='PI','Rio de Janeiro'='RJ','Rio Grande do Norte'='RN','Rio Grande do Sul'='RS','Rondônia'='RO','Roraima'='RR','Santa Catarina'='SC','São Paulo'='SP','Sergipe'='SE','Tocantins'='TO')
Tabela[[1]]=Sigla[Tabela[[1]]]
Tabela=Tabela[complete.cases(Tabela), ]
Tabela=Tabela %>%
  column_to_rownames(var=colnames(Tabela)[1])
Tabela=Tabela %>%
  select(-1)

Tabela
##          2003       2004       2005       2006       2007       2008       2009
## RO  0.5486195  0.5621062  0.5764264  0.5418130  0.5307714  0.5558404  0.5918025
## AC  0.1965851  0.1932831  0.1981301  0.1934801  0.2006487  0.2061306  0.2222542
## AM  1.5054063  1.5880821  1.5655173  1.6573581  1.5983666  1.5472126  1.5169290
## RR  0.1509986  0.1441836  0.1471231  0.1578141  0.1545182  0.1556968  0.1701742
## PA  1.7619922  1.9038540  1.8669116  1.9084450  1.9059509  1.9601556  1.8501160
## AP  0.1986783  0.1953639  0.1983986  0.2191713  0.2210273  0.2235001  0.2247395
## TO  0.3848970  0.3704035  0.3550813  0.3592361  0.3747007  0.3896193  0.4107304
## MA  1.1352423  1.1302321  1.1565645  1.2330882  1.1297020  1.2197686  1.2299456
## PI  0.4898221  0.4804727  0.4935000  0.5545033  0.5049543  0.5210407  0.5684436
## CE  1.9026986  1.8843465  1.8916315  1.9299144  1.8681558  1.9427459  2.0161766
## RN  0.8653010  0.8812355  0.9198867  0.9500145  0.9674895  0.9292826  0.9283135
## PB  0.8578781  0.8048945  0.8088709  0.8648454  0.8421911  0.8646712  0.9069922
## PE  2.2594276  2.2976711  2.3145989  2.3028199  2.2960767  2.2642571  2.3930398
## AL  0.7348309  0.7174000  0.7133803  0.7219769  0.7304906  0.7158747  0.7255356
## SE  0.6839297  0.6812029  0.6648034  0.6814750  0.6697312  0.6887374  0.6512747
## BA  3.9101378  3.9806756  4.0676547  3.9572436  4.0190794  3.9123845  4.1386394
## MG  8.3930884  8.7789976  8.6780512  8.8260622  8.8357355  8.9590116  8.6240761
## ES  1.8346924  2.0295039  2.1662639  2.2189242  2.2298725  2.3181904  2.0766440
## RJ 11.7954971 12.3206021 12.4312166 12.4401085 11.8995219 12.1643007 11.7505620
## SP 34.4278878 33.3523253 34.2323896 34.2206449 34.3956888 33.5233497 33.8157973
## PR  6.4052731  6.3057823  5.8723587  5.7128521  6.0732692  5.9709201  5.9007888
## SC  3.7311016  3.7603841  3.7570177  3.7794290  3.8131642  3.9062685  3.8732977
## RS  6.9458000  6.7011684  6.2823064  6.1268175  6.1762320  6.1171018  6.1308889
## MS  1.2716646  1.1938344  1.0930355  1.1068042  1.1059506  1.1646803  1.1856368
## MT  1.5540086  1.7054603  1.5782410  1.2741566  1.3979376  1.5821743  1.5809419
## GO  2.6518746  2.6103324  2.4815948  2.5472786  2.6251347  2.6502502  2.7862180
## DF  3.4026666  3.4262017  3.4890455  3.5137234  3.4336387  3.5468341  3.7300416
##          2010       2011       2012       2013       2014       2015       2016
## RO  0.6152555  0.6300802  0.6254252  0.5837141  0.5888780  0.6098171  0.6294193
## AC  0.2146856  0.2044939  0.2105593  0.2152054  0.2328916  0.2272062  0.2193894
## AM  1.5666371  1.6162758  1.5004424  1.5577113  1.4997292  1.4438169  1.4202444
## RR  0.1708547  0.1668894  0.1601631  0.1690054  0.1686140  0.1708350  0.1756685
## PA  2.1278377  2.2555329  2.2240128  2.2736967  2.1558395  2.1831914  2.2029078
## AP  0.2119948  0.2150002  0.2311822  0.2393923  0.2318808  0.2311839  0.2287667
## TO  0.4221683  0.4191976  0.4296046  0.4463308  0.4531846  0.4825103  0.5037991
## MA  1.1917513  1.1914759  1.2563473  1.2696865  1.3296878  1.3088523  1.3607525
## PI  0.5730835  0.5927582  0.5947895  0.5867560  0.6527739  0.6529532  0.6606280
## CE  2.0416733  2.0495429  2.0140932  2.0450928  2.1812684  2.1786939  2.2079323
## RN  0.9311870  0.9366853  0.9639568  0.9662817  0.9348162  0.9548516  0.9518945
## PB  0.8626817  0.8479410  0.8824604  0.8698540  0.9160221  0.9363556  0.9427610
## PE  2.5011216  2.5171833  2.6582642  2.6474182  2.6846153  2.6178993  2.6692658
## AL  0.6982529  0.7233674  0.7196703  0.6992722  0.7090384  0.7733298  0.7890597
## SE  0.6795145  0.6651218  0.6823431  0.6627628  0.6484294  0.6430604  0.6201213
## BA  3.9738967  3.8068619  3.7919342  3.8420651  3.8749229  4.0869312  4.1270607
## MG  9.0359558  9.1428190  9.1859787  9.1530341  8.9399240  8.6616021  8.6900936
## ES  2.1954103  2.4215487  2.4269243  2.1996011  2.2284969  2.0075093  1.7428411
## RJ 11.5768351 11.7167081 11.9400546 11.7830264 11.6124300 10.9933684 10.2148301
## SP 33.3182441 32.8278635 32.3802940 32.1710616 32.1545464 32.3544166 32.5195520
## PR  5.7955255  5.8752245  5.9321794  6.2547822  6.0233091  6.2871283  6.4092063
## SC  3.9560489  3.9774481  3.9834727  4.0233978  4.1971855  4.1542443  4.0954097
## RS  6.2084061  6.0565192  5.9730292  6.2324920  6.1917174  6.3710169  6.5204680
## MS  1.2164827  1.2597886  1.2879811  1.2979773  1.3661668  1.3856822  1.4657438
## MT  1.4565925  1.5801627  1.6546140  1.6732801  1.7517797  1.7915633  1.9759741
## GO  2.7476663  2.7716210  2.8819261  2.8377905  2.8554537  2.8959076  2.8991880
## DF  3.7102362  3.5318890  3.4082973  3.2993117  3.4163985  3.5960728  3.7570222
##          2017       2018       2019       2020       2021
## RO  0.6607894  0.6412489  0.6373055  0.6780746  0.6454636
## AC  0.2167335  0.2188865  0.2115271  0.2165209  0.2371738
## AM  1.4158452  1.4292864  1.4640570  1.5246424  1.4594870
## RR  0.1838091  0.1908869  0.1934223  0.2105798  0.2019784
## PA  2.3571923  2.3036316  2.4140455  2.8376746  2.9172308
## AP  0.2350916  0.2397897  0.2367892  0.2427082  0.2230308
## TO  0.5179294  0.5092157  0.5326193  0.5736152  0.5745667
## MA  1.3597000  1.4017350  1.3173395  1.4050148  1.3868037
## PI  0.6888723  0.7192662  0.7143030  0.7410544  0.7104671
## CE  2.2461773  2.2258807  2.2137289  2.1934741  2.1624693
## RN  0.9764817  0.9561424  0.9654285  0.9406163  0.8896967
## PB  0.9474903  0.9190791  0.9200821  0.9237287  0.8596217
## PE  2.7577265  2.6605971  2.6776272  2.5403095  2.4501780
## AL  0.8025394  0.7768697  0.7979792  0.8305611  0.8462541
## SE  0.6182008  0.5999020  0.6048003  0.5967419  0.5754614
## BA  4.0805550  4.0867187  3.9685384  4.0123125  3.9126975
## MG  8.7522190  8.7787470  8.8220480  8.9726975  9.5159754
## ES  1.7219695  1.9562721  1.8587517  1.8193595  2.0676162
## RJ 10.1982812 10.8344342 10.5550696  9.9062238 10.5335754
## SP 32.2036049 31.5607860 31.7809767 31.2452680 30.1787436
## PR  6.4004132  6.2824178  6.3116629  6.4120425  6.1025787
## SC  4.2103275  4.2578682  4.3748562  4.5899279  4.7554831
## RS  6.4273236  6.5289085  6.5293764  6.1887883  6.4500058
## MS  1.4637725  1.5272271  1.4473048  1.6114878  1.5779131
## MT  1.9261454  1.9623085  1.9233930  2.3476876  2.5897306
## GO  2.9147204  2.7938005  2.8240465  2.9453086  2.9918290
## DF  3.7160888  3.6380936  3.7029214  3.4935797  3.1839687


Agora que temos a base de dados mais limpa, podemos calcular, por exemplo, quanto é o desvio padrão dos dados ano a ano, e então observar se há ou não um padrão.

MediaEDesvioPadrao=function(tabela) {
  medias=apply(tabela,2,mean,na.rm=TRUE)
  desvios=apply(tabela,2,sd,na.rm=TRUE)
  resultados=data.frame(
    media=medias,DesvioPadrao=desvios
  )
  return(resultados)
}
PIBmedio=MediaEDesvioPadrao(Tabela)
PIBmedio
##         media DesvioPadrao
## 2003 3.703704     6.758598
## 2004 3.703704     6.598290
## 2005 3.703704     6.742848
## 2006 3.703704     6.738172
## 2007 3.703704     6.749814
## 2008 3.703704     6.604849
## 2009 3.703704     6.623542
## 2010 3.703704     6.537203
## 2011 3.703704     6.454113
## 2012 3.703704     6.385159
## 2013 3.703704     6.350154
## 2014 3.703704     6.323558
## 2015 3.703704     6.327600
## 2016 3.703704     6.326875
## 2017 3.703704     6.267552
## 2018 3.703704     6.181677
## 2019 3.703704     6.211307
## 2020 3.703704     6.080570
## 2021 3.703704     5.943463


O valor da média, naturalmente, é sempre o mesmo, uma vez que temos 27 valores que somados sempre resultam em 100, e então a média será a divisão de 100 por 27. Contudo, observa-se um desvio-padrão consideravelmente alto, de quase o dobro da média e somente abaixo de 6 em um ano, o de 2021. Tal resultado indica que há uma clara desigualdade entre a produção econômica para os diferentes estados brasileiros, pois temos estados que aparentemente variam muito do valor médio. ## Análise gráfica dos dados do PIB


Agora que temos os dados em uma base de dados mais limpa e temos uma ideia do comportamento dos valores, podemos fazer a análise por meio gráfico, através de um gráfico de linhas, de um gráfico de barras ou até mesmo de um mapa de calor para encontrar algumas observações acerca da participação de cada estado no PIB nacional.
Para isso, iremos transformar nosso data-frame com os dados em um outro dataframe mais vertical que seja melhor manipulável no R para a geração dos gráficos de uma forma mais visual.

TransformarTabela=function(Tabela) {
  Tabela=Tabela%>%tibble::rownames_to_column(var="Estado")
  TabelaLonga=Tabela %>% pivot_longer(cols=-Estado,names_to="Ano",values_to="Valor")
  return(TabelaLonga)
}
TabelaLonga=TransformarTabela(Tabela)
TabelaLonga
## # A tibble: 513 × 3
##    Estado Ano   Valor
##    <chr>  <chr> <dbl>
##  1 RO     2003  0.549
##  2 RO     2004  0.562
##  3 RO     2005  0.576
##  4 RO     2006  0.542
##  5 RO     2007  0.531
##  6 RO     2008  0.556
##  7 RO     2009  0.592
##  8 RO     2010  0.615
##  9 RO     2011  0.630
## 10 RO     2012  0.625
## # ℹ 503 more rows


Tendo o dataframe modificado, podemos começar pelo gráfico de linhas e notar se é possível observar algum padrão.

CriarLinhas=function(dados,nome){
  Grafico=plot_ly(data=dados,x=~Ano,y=~Valor,color=~Estado,type='scatter',mode='lines+markers')
  Grafico=Grafico %>%
    layout(title=nome,xaxis=list(title='',showticklabels=TRUE,showgrid=FALSE),yaxis=list(title='',showticklabels=TRUE,showgrid=FALSE))}

grafico=CriarLinhas(TabelaLonga,'Participação percentual de cada estado no PIB do Brasil, ano a ano')
grafico
## Warning in RColorBrewer::brewer.pal(N, "Set2"): n too large, allowed maximum for palette Set2 is 8
## Returning the palette you asked for with that many colors
## Warning in RColorBrewer::brewer.pal(N, "Set2"): n too large, allowed maximum for palette Set2 is 8
## Returning the palette you asked for with that many colors


Em uma observação inicial, já é possível observar um outlier considerável que é o estado de São Paulo, que se distancia de todos os outros estados e apresenta uma participação percentual de mais de 30% em todos os anos, sendo o primeiro colocado em participação no PIB em qualquer ano de observação.
Após São Paulo, temos o Rio de Janeiro como estado de destaque no gráfico, com mais de 10% de participação no PIB em todos os anos e sendo em todos os anos observados o segundo ano. Posteriormente, em terceiro lugar, observa-se um pouco abaixo ao Rio de Janeiro o estado de Minas Gerais, de modo que os três primeiros colocados em participação no PIB são três estados da Região Sudeste. Observa-se a partir disso um claro destaque da região na economia nacional.
Em sequência temos Paraná e Rio Grande do Sul, alternando entre si entre a quarta e a quinta posições, mostrando a relevância da região Sul para a produção econômica após o Sudeste.
Após esses 5 estados, observa-se um número considerável de estados muito próximos, de modo que dificulta-se a observação e comparação entre eles, sendo uma das falhas do gráfico de linhas nesa análise embora tenha a vantagem de indicar o progresso temporal de cada estado.
A fim de termos tanto uma visualização de avanço temporal quanto um posicionamento mais claro de cada estado, além do gráfico de linhas, vamos gerar também um gráfico de barras com os mesmos dados e tentar obter novos insights.

CriarBarras=function(dados) {
  plot_ly(data=dados,x=~Estado,y=~Valor,type='bar',color=~Estado,frame=~Ano,ids=~Ano,marker=list(line=list(color='black',width=1))) %>%
    layout(xaxis=list(title='',showticklabels=TRUE,showgrid=FALSE), 
           yaxis=list(title='',showticklabels=FALSE,showgrid=FALSE), 
           bargap=0,showlegend=TRUE) %>%
    animation_opts(frame=1000,redraw=TRUE) %>%
    animation_slider(currentvalue=list(prefix="Ano: "))}

figura=CriarBarras(TabelaLonga)
## Warning in RColorBrewer::brewer.pal(N, "Set2"): n too large, allowed maximum for palette Set2 is 8
## Returning the palette you asked for with that many colors
## Warning in RColorBrewer::brewer.pal(N, "Set2"): n too large, allowed maximum for palette Set2 is 8
## Returning the palette you asked for with that many colors
figura


Através do gráfico de barras ano a ano, observa-se o comportamento uniforme já observado anteriormente no gráfico de linhas para diversos estados que apresentam valores muito próximos.
Tomando o ano de 2021 como exemplo, existem 10 estados com percentuais inferiores a 1% do PIB nacional. Acre, Amapá e Roraima sequer alcançaram meio por cento.
Tal resultado apresenta uma clara desigualdade na produção de cada estados, com diversos estados com PIB proporcionalmente baixo e poucos estados com valores consideravelmente acima, em especial São Paulo que equivale a aproximadamente aos 30% do PIB obserados anteriormente.
A fim de ter uma visão mais geográfica, é possível montar um mapa de calor ano a ano com os dados e analisar seu comportamento.

geojson_url="https://raw.githubusercontent.com/codeforamerica/click_that_hood/master/public/data/brazil-states.geojson"
CriarMapa=function(data,titulo){
  data=data%>%group_by(Ano,Estado)%>%summarise(Valor=sum(Valor,na.rm=TRUE),.groups='drop')
  fig=plot_ly(type='choropleth',geojson=geojson_url,locations=data$Estado,z=data$Valor,colorscale='reds',colorbar=list(title='Valores'),featureidkey='properties.sigla',width=800,height=600)
  steps=lapply(unique(data$Ano),function(ano){ano_data=data%>%filter(Ano==ano);list(args=list(list(locations=list(ano_data$Estado),z=list(ano_data$Valor))),label=as.character(ano),method="restyle")})
  fig=fig%>%layout(title=titulo,geo=list(fitbounds="locations",visible=FALSE,projection=list(type="mercator"),bgcolor='lightblue'),sliders=list(list(active=0,steps=steps,transition=list(duration=300))))%>%config(displayModeBar=TRUE,responsive=TRUE)
  return(fig)
}
mapa=CriarMapa(TabelaLonga,'Participação no PIB por estado')
mapa


Vemos através desse mapa uma clara discrepância principalmente entre o eixo Sul-Sudeste e restante do Brasil. Enquanto temos um claro destaque no estado de São Paulo e em sequência outros estados como Rio de Janeiro e Rio Grande do Sul apresentando valores altos de participação no PIB, tal comportamento não se observa no restante do país, com Norte, Nordeste e Centro-Oeste indicando uma participação visivelmente menor no PIB nacional.
O gráfico ano a ano apresenta também muita regularidade, mostrando que esse comportamento tem se mantido estável ao longo dos anos, aínda que São Paulo tenha reduzido um pouco sua participação no PIB nacional nos últimos anos.

## Importando os dados do IDH
Feita a observação acerca da participação no PIB dos estados, vamos agora passar para a análise do IDH.
Contudo, a plataforma do Atlas Brasil não disponibiliza o download dos dados de um grupo de anos de uma vez, mas somente o download de um arquivo para cada ano. Dessa forma, a fim de simplificar a obtenção de dados, baixei externamente ao R os dados de cada ano de 2016 até 2021 no mesmo formato de planilha do próprio Atlas Brasil e então a modificação que fiz foi colocar em uma mesma planilha todos os dados, um em cada tabela.
A escolha por esses anos ocorreu por serem os dados mais recentes que possuo de forma contínua, pois não existem dados entre 2011 e 2015.

gs4_auth()
## ! Using an auto-discovered, cached token.
##   To suppress this message, modify your code or options to clearly consent to
##   the use of a cached token.
##   See gargle's "Non-interactive auth" vignette for more details:
##   <https://gargle.r-lib.org/articles/non-interactive-auth.html>
## ℹ The googlesheets4 package is using a cached token for
##   'danyel.yeshua@gmail.com'.
# Link to the Google Sheet
url <- "https://docs.google.com/spreadsheets/d/1TuJYWjrBMLonfEmPOS2qNdXQpW03XqTsCF49Q7lfrsQ/edit?usp=sharing"

# Get the sheet names (tabs)
abas <- sheet_names(url)

# Read each sheet
Tabelas <- lapply(abas, function(aba) {
  read_sheet(url, sheet = aba)
})
## ✔ Reading from "IDH por Estados".
## ✔ Range ''2016''.
## ✔ Reading from "IDH por Estados".
## ✔ Range ''2017''.
## ✔ Reading from "IDH por Estados".
## ✔ Range ''2018''.
## ✔ Reading from "IDH por Estados".
## ✔ Range ''2019''.
## ✔ Reading from "IDH por Estados".
## ✔ Range ''2020''.
## ✔ Reading from "IDH por Estados".
## ✔ Range ''2021''.
# Extract the first column of the first sheet
Estados <- Tabelas[[1]][[1]]

# Create a data frame with row names as the states
IDH <- data.frame(row.names = Estados)

IDH
## data frame com 0 coluna e 27 linhas


Como pode-se observar, os dados não estão apresentados de uma forma muito clara, necessitando uma limpeza de dados assim como no caso do dataframe dos dados do PIB. Vamos, portanto, fazer uma limpeza dos dados.

for(i in seq_along(abas)){
  Nomes=Tabelas[[i]][[1]]
  Valores=Tabelas[[i]][[3]]
  vetor=numeric(length(Estados))
  for (j in seq_along(Estados)){
    linha=match(Estados[j], Nomes)
    vetor[j]=Valores[linha]
  }
  IDH[[abas[i]]]=vetor
}

rownames(IDH)=recode(rownames(IDH),!!!Sigla)
IDH
##     2016  2017  2018  2019  2020  2021
## DF 0.847 0.842 0.845 0.859 0.829 0.814
## SP 0.835 0.831 0.837 0.845 0.823 0.806
## SC 0.814 0.817 0.819 0.826 0.803 0.792
## PR 0.797 0.797 0.805 0.807 0.787 0.769
## RJ 0.789 0.791 0.805 0.809 0.785 0.762
## RS 0.789 0.793 0.797 0.801 0.780 0.771
## ES 0.779 0.780 0.788 0.793 0.792 0.771
## MG 0.776 0.784 0.784 0.793 0.789 0.774
## MT 0.769 0.770 0.778 0.779 0.756 0.736
## GO 0.764 0.765 0.771 0.774 0.758 0.737
## MS 0.758 0.762 0.770 0.777 0.760 0.742
## RR 0.752 0.746 0.760 0.749 0.739 0.699
## TO 0.734 0.740 0.749 0.751 0.755 0.731
## AP 0.733 0.732 0.741 0.737 0.724 0.688
## RN 0.732 0.728 0.739 0.742 0.750 0.728
## PE 0.724 0.722 0.735 0.740 0.739 0.719
## AC 0.723 0.712 0.733 0.739 0.746 0.710
## CE 0.722 0.730 0.739 0.744 0.755 0.734
## RO 0.715 0.721 0.730 0.730 0.739 0.700
## AM 0.711 0.728 0.718 0.726 0.727 0.700
## BA 0.705 0.710 0.710 0.718 0.724 0.691
## PB 0.704 0.717 0.711 0.713 0.714 0.698
## SE 0.697 0.699 0.710 0.705 0.722 0.702
## PA 0.687 0.694 0.707 0.704 0.719 0.690
## PI 0.685 0.694 0.699 0.706 0.708 0.690
## MA 0.680 0.685 0.686 0.694 0.699 0.676
## AL 0.680 0.679 0.689 0.687 0.694 0.684


Tendo os daodos, podemos novamente encontrar a média e o desvio padrão e encontrar medidas mais gerais da esperança dos valores e de sua dispersão.

IDHmedio=MediaEDesvioPadrao(IDH)
IDHmedio
##          media DesvioPadrao
## 2016 0.7444815   0.04725086
## 2017 0.7470000   0.04537875
## 2018 0.7538889   0.04505581
## 2019 0.7573333   0.04700573
## 2020 0.7524444   0.03618790
## 2021 0.7301481   0.03989188


Como pode-se observar, o Brasil possui um IDH médio por estado de aproximadamente 0,75, o que é um IDH considerado alto para o PNUD, de modo que um país com esse valor estaria por volta da posição 90 a 100 no Ranking global de países por IDH, sendo que a real posição do Brasil segundo os dados mais recentes que são de 2022 o posicionam no 89º lugar, indicando que o IDH real do país localiza-se próximo ao IDH médio de seus estados.
Contudo, o desvuio padrão, ainda que baixo, entre 4,8% e 4%, indica uma certa divergência para os valores a depender de cada estado analisado e indicando uma substancial divergência entre os estados do país.

## Análise gráfica dos dados do IDH
Feita essa checagem inicial, podemos realizar a mesma análise gráfica que foi possível anteriormente mas para os dados de IDH. Seguiremos a mesma ordem iniciando pelo gráfico de linhas, seguido pelo de barras e depois pelo mapa de calor.

IDHLongo=TransformarTabela(IDH)
IDHLongo
## # A tibble: 162 × 3
##    Estado Ano   Valor
##    <chr>  <chr> <dbl>
##  1 DF     2016  0.847
##  2 DF     2017  0.842
##  3 DF     2018  0.845
##  4 DF     2019  0.859
##  5 DF     2020  0.829
##  6 DF     2021  0.814
##  7 SP     2016  0.835
##  8 SP     2017  0.831
##  9 SP     2018  0.837
## 10 SP     2019  0.845
## # ℹ 152 more rows
Grafico=CriarLinhas(IDHLongo,"IDH de cada estado ano a ano")
Grafico
## Warning in RColorBrewer::brewer.pal(N, "Set2"): n too large, allowed maximum for palette Set2 is 8
## Returning the palette you asked for with that many colors
## Warning in RColorBrewer::brewer.pal(N, "Set2"): n too large, allowed maximum for palette Set2 is 8
## Returning the palette you asked for with that many colors
Figura=CriarBarras(IDHLongo)
## Warning in RColorBrewer::brewer.pal(N, "Set2"): n too large, allowed maximum for palette Set2 is 8
## Returning the palette you asked for with that many colors
## Warning in RColorBrewer::brewer.pal(N, "Set2"): n too large, allowed maximum for palette Set2 is 8
## Returning the palette you asked for with that many colors
Figura
Mapa=CriarMapa(IDHLongo,'IDH por estado')
Mapa

Um ponto que se observa já de início é que a discrepância observada em relação à participação do PIB não se observa nesse caso. Enquanto em PIB temos São Paulo acima de todos os estados e com uma margem de diferença considerável, no IDH há uma maior uniformidade, e com o Distrito Federal em primeiro.
Contudo, após o DF, observa-se ainda São Paulo como segundo colocado em IDH no Brasil, ambos com valores muito próximos a 0,85, exceto nos anos de 2020 e 2021. Depois, observamos Santa Catarina, Minas Gerais e o Rio Grande do Sul fechando os 5 primeiros estados brasileiros em IDH. O destaque se dá ao Rio de Janeiro, segundo colocado em participação no PIB nacional mas somente o oitavo em IDH, atrás do Espírito Santo e do Paraná.
Observa-se em todos os estados uma redução nos anos já citados de 2020 e 2021. Isso pode ser justificado pela pandemia de covid-19 e seus impactos na saúde, educação e principalmente economia, três variáveis de desenvolvimento mensuradas no IDH.
Por fim, ainda que se observe ainda uma superioridade do eixo sul-sudeste em relação ao IDH assim como se observou em relação ao PIB, essa diferença é menos evidente nesse caso, tendo por exemplo o centro-oeste sendo uma espécie de meio-termo entre os estados do Sul e Sudeste e os estados do Norte e Nordeste.

## Análise de dispersão entre os valores observados
Agora que temos os dados das duas bases, podemos fazer uma análise comparativa mais detalhada entre elas através de gráficos de dispersão e do cálculo da correlação.
Contudo, como os dados do IDH são limitados a 2016, precisaremos fazer um recorte na base de dados da participação no PIB para gerar os gráficos.

Tabela=Tabela[, -c(1:13)]
Tabela
##          2016       2017       2018       2019       2020       2021
## RO  0.6294193  0.6607894  0.6412489  0.6373055  0.6780746  0.6454636
## AC  0.2193894  0.2167335  0.2188865  0.2115271  0.2165209  0.2371738
## AM  1.4202444  1.4158452  1.4292864  1.4640570  1.5246424  1.4594870
## RR  0.1756685  0.1838091  0.1908869  0.1934223  0.2105798  0.2019784
## PA  2.2029078  2.3571923  2.3036316  2.4140455  2.8376746  2.9172308
## AP  0.2287667  0.2350916  0.2397897  0.2367892  0.2427082  0.2230308
## TO  0.5037991  0.5179294  0.5092157  0.5326193  0.5736152  0.5745667
## MA  1.3607525  1.3597000  1.4017350  1.3173395  1.4050148  1.3868037
## PI  0.6606280  0.6888723  0.7192662  0.7143030  0.7410544  0.7104671
## CE  2.2079323  2.2461773  2.2258807  2.2137289  2.1934741  2.1624693
## RN  0.9518945  0.9764817  0.9561424  0.9654285  0.9406163  0.8896967
## PB  0.9427610  0.9474903  0.9190791  0.9200821  0.9237287  0.8596217
## PE  2.6692658  2.7577265  2.6605971  2.6776272  2.5403095  2.4501780
## AL  0.7890597  0.8025394  0.7768697  0.7979792  0.8305611  0.8462541
## SE  0.6201213  0.6182008  0.5999020  0.6048003  0.5967419  0.5754614
## BA  4.1270607  4.0805550  4.0867187  3.9685384  4.0123125  3.9126975
## MG  8.6900936  8.7522190  8.7787470  8.8220480  8.9726975  9.5159754
## ES  1.7428411  1.7219695  1.9562721  1.8587517  1.8193595  2.0676162
## RJ 10.2148301 10.1982812 10.8344342 10.5550696  9.9062238 10.5335754
## SP 32.5195520 32.2036049 31.5607860 31.7809767 31.2452680 30.1787436
## PR  6.4092063  6.4004132  6.2824178  6.3116629  6.4120425  6.1025787
## SC  4.0954097  4.2103275  4.2578682  4.3748562  4.5899279  4.7554831
## RS  6.5204680  6.4273236  6.5289085  6.5293764  6.1887883  6.4500058
## MS  1.4657438  1.4637725  1.5272271  1.4473048  1.6114878  1.5779131
## MT  1.9759741  1.9261454  1.9623085  1.9233930  2.3476876  2.5897306
## GO  2.8991880  2.9147204  2.7938005  2.8240465  2.9453086  2.9918290
## DF  3.7570222  3.7160888  3.6380936  3.7029214  3.4935797  3.1839687
CriarPontos=function(col) {
  idx=rownames(Tabela)
  df=data.frame(
    x=Tabela[[col]],y=IDH[idx,col],row.names=idx
  )
  list(
    grafico=plot_ly(df,x= ~x,y= ~y) %>%
      add_trace(type='scatter',mode='markers',text=rownames(df),hoverinfo='text',marker=list(color='blue')) %>%
      add_trace(y=predict(lm(y~x,df),newdata=df),type='scatter',mode='lines',line=list(color='red')) %>%
      layout(
        title='Dispersão entre IDH e participação no PIB',xaxis=list(title='Participação no PIB',showgrid=FALSE),yaxis=list(title='IDH',showgrid=FALSE),showlegend=FALSE
      ),
    correlacao=cor(df$x,df$y)
  )
}
Resultado2015=CriarPontos(1)
Resultado2015$grafico
Resultado2021=CriarPontos(6)
Resultado2021$grafico


Gerados os gráficos de 2015 e 2021, é possível notar que o comportamento é consideravelmente similar. Como esperado pela alta quantidade de estados com PIB proporcionalmente menor, há muitos pontos próximos ao eixo vertical. São Paulo se mostra como um ponto muito distante dos outros pela proporção do PIB.
A linha de tendência é positivamente inclinada, refletindo uma correlação entre riqueza e desenvolvimento humano.
É possíve encontrar a correlação para cada ano e então encontrar a média e o desvio padrão entre eles como forma de observar o comportamento entre os dados.

Analise=numeric(6)
for (i in 1:6) {
  Analise[i] <- CriarPontos(i)$correlacao
}
Analise
## [1] 0.5693438 0.5710206 0.5699722 0.5801345 0.5851633 0.5971801
resultados=c(mean(Analise),sd(Analise))
resultados
## [1] 0.57880240 0.01102698


Como pode-se observar, á média é de aproximadamente 0,57 e o desvio-padrão de aproximadamente 1,1%. Com isso, nota-se que ainda que não seja uma associação plena de que riqueza gera desenvolvimento humano, é possível sim observar uma correlação entre tais variáveis, e dado o baixo desvio padrão, esse comportamento tende a se manter estável, sem sofrer grandes variações mesmo com choques como a crise econômica em 2016 e a pandemia de covid-19.
Portanto, conclui-se que no caso nacional não há uma relação de causalidade plena, porém existe ainda sim uma clara correlação entre a riqueza dos estados nacionais e a qualidade de vida em cada um deles.