RStudio Desktop
1. Install R (https://cran.rstudio.com/ (base e Rtools)
2. Download RStudio Desktop (https://rstudio.com/products/rstudio/download/)
library(readxl)
library(dplyr)
library(car)
library(rstatix)
library(emmeans)
library(ggplot2)
library(knitr)
library(kableExtra)
library(htmltools)
#library(readxl)
<- read_excel("C:/Users/Andreia Zanella/Seafile/Minha Biblioteca/INE/Aulas graduação/2020.2/INE5123/DadosIDH.xlsx") DadosIDH
ou
File -> Import Dataset -> From excel… (ou outro formato) -> Browse -> Import
View(DadosIDH)
ou
#library(dplyr)
glimpse(DadosIDH)
## Rows: 293
## Columns: 14
## $ Ref <dbl> 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, ~
## $ Estado <chr> "SC", "SC", "SC", "SC", "SC", "SC", "SC", "SC", "SC", "~
## $ Mesorregião <chr> "V. Itajai", "Sul", "Oeste", "Sul", "G. Fpolis", "Oeste~
## $ Microrregião <chr> "Blumenau", "Tubarão", "Joaçaba", "Tubarão", "Tijucas",~
## $ Cidade <chr> "BOTUVERÁ", "SANTA ROSA DE LIMA", "IOMERÊ", "PEDRAS GRA~
## $ População <dbl> 5322, 2147, 2962, 3953, 38583, 9810, 6559, 4115, 24382,~
## $ AnosEstudo_cat <chr> "9 a 11 anos", "11 a 13 anos", "9 a 11 anos", "9 a 11 a~
## $ MortInf_cat <chr> "12 a 16", "12 a 16", "8 a 12", "8 a 12", "8 a 12", "12~
## $ EspVida_cat <chr> "75 a 79", "75 a 79", "75 a 79", "75 a 79", "75 a 79", ~
## $ Renda_cat <chr> "Superior ou igual à Mediana", "Inferior à Mediana", "S~
## $ AnosEstudo <dbl> 10.53, 11.51, 10.43, 9.41, 9.50, 11.66, 10.29, 8.96, 9.~
## $ MortInf <dbl> 12.4, 12.8, 9.2, 10.7, 11.1, 12.2, 12.0, 12.8, 10.3, 10~
## $ EspVida <dbl> 75.87, 75.55, 78.44, 77.18, 76.90, 75.97, 76.15, 75.55,~
## $ Renda <dbl> 805.77, 731.43, 873.90, 683.36, 794.12, 719.94, 754.54,~
Visualização em tabela (das 10 primeiras entradas):
#library(knitr)
kable(head(DadosIDH, 10), align = 'c') %>%
kable_styling(full_width = FALSE, font_size = 9.5, bootstrap_options = c("striped", "condesed"))
Ref | Estado | Mesorregião | Microrregião | Cidade | População | AnosEstudo_cat | MortInf_cat | EspVida_cat | Renda_cat | AnosEstudo | MortInf | EspVida | Renda |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | SC | V. Itajai | Blumenau | BOTUVERÁ | 5322 | 9 a 11 anos | 12 a 16 | 75 a 79 | Superior ou igual à Mediana | 10.53 | 12.4 | 75.87 | 805.77 |
2 | SC | Sul | Tubarão | SANTA ROSA DE LIMA | 2147 | 11 a 13 anos | 12 a 16 | 75 a 79 | Inferior à Mediana | 11.51 | 12.8 | 75.55 | 731.43 |
3 | SC | Oeste | Joaçaba | IOMERÊ | 2962 | 9 a 11 anos | 8 a 12 | 75 a 79 | Superior ou igual à Mediana | 10.43 | 9.2 | 78.44 | 873.90 |
4 | SC | Sul | Tubarão | PEDRAS GRANDES | 3953 | 9 a 11 anos | 8 a 12 | 75 a 79 | Inferior à Mediana | 9.41 | 10.7 | 77.18 | 683.36 |
5 | SC | G. Fpolis | Tijucas | SÃO JOÃO BATISTA | 38583 | 9 a 11 anos | 8 a 12 | 75 a 79 | Superior ou igual à Mediana | 9.50 | 11.1 | 76.90 | 794.12 |
6 | SC | Oeste | Chapecó | SAUDADES | 9810 | 11 a 13 anos | 12 a 16 | 75 a 79 | Inferior à Mediana | 11.66 | 12.2 | 75.97 | 719.94 |
7 | SC | G. Fpolis | Tabuleiro | ÁGUAS MORNAS | 6559 | 9 a 11 anos | 12 a 16 | 75 a 79 | Inferior à Mediana | 10.29 | 12.0 | 76.15 | 754.54 |
8 | SC | V. Itajai | Blumenau | DOUTOR PEDRINHO | 4115 | 7 a 9 anos | 12 a 16 | 75 a 79 | Inferior à Mediana | 8.96 | 12.8 | 75.55 | 679.44 |
9 | SC | V. Itajai | Blumenau | GUABIRUBA | 24382 | 9 a 11 anos | 8 a 12 | 75 a 79 | Superior ou igual à Mediana | 9.67 | 10.3 | 77.53 | 851.75 |
10 | SC | Norte | Joinville | MASSARANDUBA | 17125 | 9 a 11 anos | 8 a 12 | 75 a 79 | Superior ou igual à Mediana | 10.76 | 10.9 | 77.04 | 847.63 |
Contagem automatizada:
nrow(DadosIDH)
length(which(DadosIDH$Mesorregião=="G. Fpolis"))
length(which(DadosIDH$Mesorregião=="Norte"))
length(which(DadosIDH$Mesorregião=="Oeste"))
length(which(DadosIDH$Mesorregião=="Serrana"))
length(which(DadosIDH$Mesorregião=="Sul"))
length(which(DadosIDH$Mesorregião=="V. Itajai"))
Para inserir uma contagem automatizada no texto, inserir no texto r nrow(DadosIDH) e r length(which(DadosIDH$Mesorregião==“G. Fpolis”)) entre crases: O banco de dados contém informação de 293 cidades, sendo que 21 são da região Grande Florianópolis.
<- subset(DadosIDH, DadosIDH[3]=="G. Fpolis")
GFpolis <- subset(DadosIDH, DadosIDH[3]=="V. Itajai")
VItajai <- subset(DadosIDH, DadosIDH[3]=="Sul")
Sul <- subset(DadosIDH, DadosIDH[3]=="Oeste")
Oeste <- subset(DadosIDH, DadosIDH[3]=="Norte")
Norte <- subset(DadosIDH, DadosIDH[3]=="Serrana") Serrana
summary(DadosIDH[11:14]) # medidas de posição para variáveis das colunas 11 a 14
## AnosEstudo MortInf EspVida Renda
## Min. : 7.35 Min. : 8.55 Min. :71.05 Min. : 373.9
## 1st Qu.: 9.71 1st Qu.:10.60 1st Qu.:74.51 1st Qu.: 642.6
## Median :10.31 Median :12.20 Median :76.03 Median : 768.8
## Mean :10.30 Mean :12.59 Mean :75.81 Mean : 767.0
## 3rd Qu.:10.88 3rd Qu.:14.30 3rd Qu.:77.25 3rd Qu.: 858.2
## Max. :12.70 Max. :19.90 Max. :78.64 Max. :1798.1
library(pastecs)
<- stat.desc(DadosIDH[11:14]) # para variáveis das colunas 11 a 14
descr round(descr, 2) #arredondar para 2 casas decimais
## AnosEstudo MortInf EspVida Renda
## nbr.val 293.00 293.00 293.00 293.00
## nbr.null 0.00 0.00 0.00 0.00
## nbr.na 0.00 0.00 0.00 0.00
## min 7.35 8.55 71.05 373.86
## max 12.70 19.90 78.64 1798.12
## range 5.35 11.35 7.59 1424.26
## sum 3016.82 3688.39 22212.95 224719.91
## median 10.31 12.20 76.03 768.81
## mean 10.30 12.59 75.81 766.96
## SE.mean 0.05 0.14 0.10 11.67
## CI.mean.0.95 0.11 0.28 0.20 22.96
## var 0.85 5.85 3.10 39888.44
## std.dev 0.92 2.42 1.76 199.72
## coef.var 0.09 0.19 0.02 0.26
<- stat.desc(GFpolis[11:14]) # para região GFpolis nas colunas 11 a 14
descr_GFpolis round(descr_GFpolis, 2)
## AnosEstudo MortInf EspVida Renda
## nbr.val 21.00 21.00 21.00 21.00
## nbr.null 0.00 0.00 0.00 0.00
## nbr.na 0.00 0.00 0.00 0.00
## min 7.44 9.10 72.82 618.55
## max 11.02 16.90 78.59 1798.12
## range 3.58 7.80 5.77 1179.57
## sum 208.25 243.46 1608.54 17697.62
## median 10.07 11.10 76.90 794.12
## mean 9.92 11.59 76.60 842.74
## SE.mean 0.23 0.46 0.35 54.72
## CI.mean.0.95 0.48 0.96 0.73 114.15
## var 1.09 4.46 2.55 62885.31
## std.dev 1.05 2.11 1.60 250.77
## coef.var 0.11 0.18 0.02 0.30
library(e1071)
kurtosis(DadosIDH$Renda, type=1) # 1 população, 2 amostra
## [1] 3.908539
skewness(DadosIDH$Renda, type=1) # 1 população, 2 amostra
## [1] 1.098342
plot(DadosIDH$Renda, DadosIDH$EspVida, main="",
xlab="Renda percapita", ylab="Esperança de vida ao nascer",
col="blue", pch=16) #número do pch altera o tipo de marcador
library(ggplot2)
options(scipen = 999)
ggplot(DadosIDH, aes(x=`Renda`,
y=`EspVida`,
color=Mesorregião)) +
geom_point(alpha=0.8) + #tranparência
scale_size(range = c(2, 16), #tamanho bolhas
name="População") +
xlab("Renda per capita") +
ylab("Esperança de Vida ao nascer")
hist(DadosIDH$AnosEstudo,
main = "Expectativa de Anos de Estudo nos municípios de Santa Catarina",
xlab = "Expectativa de Anos de Estudo", ylab="Frequência",
xlim = c(6,14), #início e fim do eixo
breaks= c(7.3,8,8.7,9.4,10.1,10.8,11.5,12.2,12.9), col = c("lightblue"))
hist(DadosIDH$MortInf,
main = "Taxa de mortalidade Infantil nos municípios de Santa Catarina",
xlab = "Taxa de mortalidade Infantil", ylab="Frequência",
xlim = c(8,20), breaks= c(8.5,10,11.5,13,14.5,16,17.5,19,20.5), col = c("lightblue"))
ggplot(DadosIDH[13],aes(x=EspVida))+
geom_histogram(position = 'identity',binwidth = 1,alpha = 0.5,fill="blue",color="black")+
xlab("Esperança de vida ao nascer")+ ylab("Frequência")
ggplot(DadosIDH[14],aes(x=Renda))+
geom_histogram(position = 'identity',binwidth = 200,alpha = 0.5,fill="blue",color="black")+
xlab("Renda per capita")+ ylab("Frequência")
par(mfrow=c(2,2)) # permite imprimir vários gráficos numa mesma figura
#par(mfcol=c(3,3))
hist(DadosIDH$AnosEstudo, main = "",
xlab = "Expectativa de Anos de Estudo", ylab="Frequência",
xlim = c(6,14), #início e fim do eixo
breaks= c(7.3,8,8.7,9.4,10.1,10.8,11.5,12.2,12.9), col = c("lightblue"))
hist(DadosIDH$MortInf, main = "",
xlab = "Taxa de mortalidade Infantil", ylab="Frequência",
xlim = c(8,20), breaks= c(8.5,10,11.5,13,14.5,16,17.5,19,20.5), col = c("lightblue"))
hist(DadosIDH$EspVida, main = "",
xlab = "Esperança de Vida ao nascer (em anos)", ylab="Frequência",
xlim = c(70,80), breaks=c(71,72,73,74,75,76,77,78,79), col = c("lightblue"))
hist(DadosIDH$`Renda`, main = "",
xlab = "Renda percapita", ylab="Frequência",
xlim = c(0,2000), breaks=c(300,500,700,900,1100,1300,1500,1700,1900), col = c("lightblue"))
#dev.off()
library(psych)
multi.hist(DadosIDH[11:14],nrow=NULL,ncol=NULL,density=TRUE,freq=FALSE,bcol="white",
dcol=c("red","blue"),dlty=c("dashed","dotted"),
main=c("Média de Anos de Estudo","Taxa de mortalidade infantil","Esperança de vida ao nascer","Renda percapita"),
ylab="Densidade",
mar=c(6,4,2,1),breaks=7)
%>%
DadosIDH filter(Mesorregião=="V. Itajai" |Mesorregião=="Serrana") %>% # filtra no conjunto de dados, os dados de V. Itajaí e Serrana
ggplot(aes(x=Renda, fill=Mesorregião))+ #fill=Mesorregião Insere cor
geom_histogram(position = 'identity',binwidth = 100,alpha = 0.5,color="gray")+
xlab("Renda per capita")+ ylab("Frequência")
%>%
DadosIDH filter(Mesorregião=="V. Itajai"|Mesorregião=="Serrana"|Mesorregião=="Sul") %>% #
ggplot(aes(x=Renda, fill=Mesorregião))+ #fill=Mesorregião Insere cor
geom_histogram(position = 'identity',binwidth = 100,alpha = 0.5,color="gray")+
xlab("Renda per capita")+ ylab("Frequência")+
facet_grid(rows = "Mesorregião")
%>%
DadosIDH filter(Mesorregião=="V. Itajai" |Mesorregião=="Serrana") %>%
ggplot(aes(x=Renda, fill=Microrregião))+ #fill=Microrreegião subdivide por cores os municícipos de cada microrregião
geom_histogram(position = 'identity',binwidth = 100,alpha = 0.5,color="gray")+
xlab("Renda per capita")+ ylab("Frequência")+
facet_grid(rows = "Mesorregião")
boxplot(DadosIDH$`EspVida`,
main="Municípios de Santa Catarina", col="lightblue",
ylab="Esperança de Vida")
boxplot(DadosIDH$`Renda`,
main="Municípios de Santa Catarina", col="lightblue",
ylab="Renda per capita")
boxplot(DadosIDH$`Renda`~DadosIDH$Mesorregião, col="lightblue",
boxwex=0.4, xlab="Mesorregião", ylab="Renda per capita")
boxplot(DadosIDH$`Renda`~DadosIDH$Mesorregião,
col=(c("lightblue", "lightblue", "gold", "gold", "lightblue", "lightblue")),
boxwex=0.4, xlab="Mesorregião", ylab="Renda per capita")
legend("top", #posição
legend = c("Litoraneas", "Não litoraneas"),
col = c("lightblue", "gold"),
pch = c(19,19), #formato da legenda
bty = "n", #caixa em torno da legenda "o" para caixa, "n" para sem caixa
pt.cex = 2, #tamanho do símbolo da legenda
cex = 0.9, #tamanho letra legenda
text.col = "black",
ncol = 2, #1 se quiser escrever as legendas uma abaixo da outra
horiz = F,
inset = c(0.02, 0.02)) #posição
boxplot(DadosIDH$`Renda`~DadosIDH$Mesorregião,
at=rank(tapply(DadosIDH$`Renda`,DadosIDH$Mesorregião, median)),
col=(c("lightblue", "lightblue", "gold", "gold", "lightblue", "lightblue")),
boxwex=0.4, xlab="Mesorregião", ylab="Renda per capita")
legend("topleft", #posição
legend = c("Litoraneas", "Não litoraneas"),
col = c("lightblue", "gold"),
pch = c(19,19), #formato da legenda
bty = "n", #caixa em torno da legenda "o" para caixa, "n" para sem caixa
pt.cex = 2, #tamanho da simbolo da legenda
cex = 0.9, #tamanho letra
text.col = "black",
ncol = 2, #1 se quiser escrever as legendas uma abaixo da outra
horiz = F,
inset = c(0.02, 0.02)) #posição
library(ggplot2)
options(scipen = 999)
ggplot(DadosIDH, aes(x=`Renda`,
y=`EspVida`,
size=`População`, #tamanho da bolha
color=Mesorregião)) +
geom_point(alpha=0.6) + #tranparência
scale_size(range = c(2, 16), #tamanho bolhas
name="População") +
ggtitle("Municípios de Santa Catarina") +
xlab("Renda per capita") +
ylab("Esperança de Vida ao nascer")
ggplot(DadosIDH, aes(x=`AnosEstudo`,
y=`EspVida`,
size=`Renda`,
color=Mesorregião)) +
geom_point(alpha=0.6) +
scale_size(range = c(1, 12), name="Renda per capita") +
ggtitle("Municípios de Santa Catarina") +
xlab("Expectativa Anos de Estudo") +
ylab("Esperança de Vida ao nascer")
O comando options(scipen = 999)
evita que os dados sejam apresentados em notação científica.
cor(DadosIDH[11:14])
## AnosEstudo MortInf EspVida Renda
## AnosEstudo 1.00000000 -0.08775916 0.08744352 0.1895137
## MortInf -0.08775916 1.00000000 -0.99772637 -0.6258257
## EspVida 0.08744352 -0.99772637 1.00000000 0.6314466
## Renda 0.18951368 -0.62582570 0.63144657 1.0000000
library(corrplot)
corrplot(cor(DadosIDH[11:14]), method = "circle", type = "lower", diag = TRUE)
corrplot(cor(DadosIDH[11:14]), method = "ellipse",type = "lower", diag = TRUE)
corrplot(cor(DadosIDH[11:14]), method = "number")
<- cor(DadosIDH[11:14])[1:4,1:4]
M colnames(M) <- c("AnosEstudo","MortInf","EspVida","Renda")
corrplot.mixed(M)
library(Hmisc)
<- rcorr(as.matrix(DadosIDH[11:14])) #correlações e valores p
correlacao $r correlacao
## AnosEstudo MortInf EspVida Renda
## AnosEstudo 1.00000000 -0.08775916 0.08744352 0.1895137
## MortInf -0.08775916 1.00000000 -0.99772637 -0.6258257
## EspVida 0.08744352 -0.99772637 1.00000000 0.6314466
## Renda 0.18951368 -0.62582570 0.63144657 1.0000000
$P correlacao
## AnosEstudo MortInf EspVida Renda
## AnosEstudo NA 0.1339602 0.1353703 0.001115402
## MortInf 0.133960193 NA 0.0000000 0.000000000
## EspVida 0.135370337 0.0000000 NA 0.000000000
## Renda 0.001115402 0.0000000 0.0000000 NA
library(PerformanceAnalytics)
chart.Correlation(DadosIDH[11:14], histogram = FALSE)