Importar a a base de dados

library(readxl)
Questionario_Estresse <- read_excel("C:/Users/Maria Helena/Desktop/Base_de_dados-master/Questionario_Estresse.xls")
View(Questionario_Estresse)

Olhar a base de dados

head(Questionario_Estresse)
## # A tibble: 6 × 10
##   Aluno Turma Mora_pais    RJ Namorado_a Trabalha Desempenho Estresse Créditos
##   <dbl> <dbl>     <dbl> <dbl>      <dbl>    <dbl>      <dbl>    <dbl>    <dbl>
## 1     1     1         2     2          2        2       8.89       23       27
## 2     2     1         1     1          2        2       8.8        24       28
## 3     3     1         2     2          2        2       8          25       25
## 4     4     1         2     2          1        1       8.8        38       21
## 5     5     1         2     2          2        1       8.9        41       18
## 6     6     1         2     2          1        1       8.1        25       29
## # ℹ 1 more variable: Horas_estudo <dbl>

Limpeza da base de dados

Questionario_Estresse$Mora_pais = ifelse(Questionario_Estresse$Mora_pais==1,"Sim","Não")
Questionario_Estresse$RJ = ifelse(Questionario_Estresse$RJ==1,"Sim","Não")
Questionario_Estresse$Namorado_a = ifelse(Questionario_Estresse$Namorado_a==1,"Sim","Não")
Questionario_Estresse$Trabalha = ifelse(Questionario_Estresse$Trabalha==1,"Sim","Não")

table(Questionario_Estresse$Turma)
## 
##  1  2  3 
## 28 32 35
Questionario_Estresse$Turma = ifelse(Questionario_Estresse$Turma==1,"Turma 1",
                  ifelse(Questionario_Estresse$Turma==2,"Turma 2",
                         "Turma 3"))

Análise de Dados

summary(Questionario_Estresse)
##      Aluno         Turma            Mora_pais              RJ           
##  Min.   : 1.0   Length:95          Length:95          Length:95         
##  1st Qu.:24.5   Class :character   Class :character   Class :character  
##  Median :48.0   Mode  :character   Mode  :character   Mode  :character  
##  Mean   :48.0                                                           
##  3rd Qu.:71.5                                                           
##  Max.   :95.0                                                           
##                                                                         
##   Namorado_a          Trabalha           Desempenho       Estresse    
##  Length:95          Length:95          Min.   :5.820   Min.   :12.00  
##  Class :character   Class :character   1st Qu.:8.500   1st Qu.:22.50  
##  Mode  :character   Mode  :character   Median :8.700   Median :27.00  
##                                        Mean   :8.594   Mean   :27.82  
##                                        3rd Qu.:9.050   3rd Qu.:33.00  
##                                        Max.   :9.700   Max.   :44.00  
##                                                                       
##     Créditos      Horas_estudo  
##  Min.   :15.00   Min.   :19.00  
##  1st Qu.:23.00   1st Qu.:25.00  
##  Median :24.00   Median :30.00  
##  Mean   :24.95   Mean   :30.73  
##  3rd Qu.:27.00   3rd Qu.:35.00  
##  Max.   :49.00   Max.   :60.00  
##  NA's   :1

Análise com duas variáveis (Quanti vs Quali)

library(dplyr)
## Warning: pacote 'dplyr' foi compilado no R versão 4.4.2
## 
## 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(reactable)

Questionario_Estresse %>% group_by(Turma) %>% summarise(média=mean(Desempenho),
                                     desvio_padrao=sd(Desempenho))
## # A tibble: 3 × 3
##   Turma   média desvio_padrao
##   <chr>   <dbl>         <dbl>
## 1 Turma 1  8.61         0.441
## 2 Turma 2  8.71         0.663
## 3 Turma 3  8.47         1.04
Questionario_Estresse %>% group_by(Turma) %>% summarise(mínimo = min(Desempenho),
                                     quartil1 = quantile(Desempenho, probs=0.25),
                                     mediana=median(Desempenho),
                                     quartil3 = quantile(Desempenho, probs=0.75),
                                     máximo=max(Desempenho)) %>% 
reactable()

Podemos gerar uma visualização dessas estatísticas?

BOXPLOT

boxplot(Desempenho ~ Turma, data = Questionario_Estresse)

boxplot(Desempenho ~ Turma, data = Questionario_Estresse,col="black",
        main="Gráfico 1 - boxplot do desempenho por turma")

library(ggplot2)
library(ggthemes)
## Warning: pacote 'ggthemes' foi compilado no R versão 4.4.2
Questionario_Estresse %>% ggplot() + aes(x=Turma,y=Desempenho)+
  geom_boxplot(fill='gold') + theme_minimal() + theme(
    plot.background = element_rect(fill = "pink"))

Devemos impedir os alunos de trabalhar?

Devemos impedir o namoro na escola?

Desfechos/Variável resposta

Horas de estudo e Desempenho

Variáveis explicativas

Trabalha e Namora

Questionario_Estresse %>% group_by(Trabalha) %>% summarise(média_HE=round(mean(Horas_estudo),1),
                                        desvio_padrao_HE=round(sd(Horas_estudo),1),
                                        média_nota=round(mean(Desempenho),1),
                                        desvio_padrao_nota=round(sd(Desempenho),1)) %>% 
reactable()
Questionario_Estresse %>% ggplot() + aes(x=Trabalha,y=Desempenho)+
  geom_boxplot(fill='purple') + theme_minimal() + theme(
    plot.background = element_rect(fill = "lightyellow"))

Recomendação de política pública

Não fazer nada. Deixar o pessoal trabalhar, se quiser

#———————————————–

Questionario_Estresse %>% select(Namorado_a,Horas_estudo,Desempenho) %>%
group_by(Namorado_a) %>% 
summarise(média_horas = round(mean(Horas_estudo),1),
            dp_horas=round(sd(Horas_estudo),1),
            media_nota=round(mean(Desempenho),1),
            dp_nota=round(sd(Desempenho),1)) %>% reactable()
Questionario_Estresse %>% ggplot()+ aes(x=Namorado_a,y=Desempenho)+
geom_boxplot(fill="skyblue")+
theme_solarized()+coord_flip()+
labs(title="Boxplot",
       subtitle = "do desempenho do aluno por namora",
       x= "Namora","Nota do aluno",
       caption = "fonte dos dados: base questionario")

Recomendação de política pública

Deixa o pessoal namorar

#———————————————————–

library(geobr)
## Warning: pacote 'geobr' foi compilado no R versão 4.4.2
## Carregando namespace exigido: sf
library(readxl)
library(dplyr)

BasesEstados <- read_excel("C:/Users/Maria Helena/Desktop/Base_de_dados-master/BasesEstados.xlsx")
View(BasesEstados)

mapa_estados =  read_state()
## Using year/date 2010
class(BasesEstados)
## [1] "tbl_df"     "tbl"        "data.frame"
class(mapa_estados)
## [1] "sf"         "data.frame"
plot(mapa_estados)

BasesEstados$code_state = BasesEstados$Codigo

class(BasesEstados$code_state)
## [1] "character"
class(mapa_estados$code_state)
## [1] "numeric"
BasesEstados$code_state = as.numeric(BasesEstados$code_state)

dados_para_mapa = mapa_estados %>% left_join(BasesEstados)
## Joining with `by = join_by(code_state)`
library(ggplot2)
ggplot() +
  geom_sf(data=dados_para_mapa, aes(fill=IDH)) +
  scale_fill_distiller(palette = "Oranges",
                       direction = 1, name="IDH", 
                       limits = c(0.6,1))

summary(dados_para_mapa$Renda_per_capita)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   360.3   509.4   599.0   697.0   813.2  1715.1
ggplot() +
geom_sf(data=dados_para_mapa, aes(fill=Renda_per_capita)) +
scale_fill_distiller(palette = "Purples",
                       direction = 1, name="Renda per capta", 
                       limits = c(359,1720))

summary(dados_para_mapa$Gini)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##  0.4900  0.5600  0.6000  0.5907  0.6200  0.6500
ggplot() +
  geom_sf(data=dados_para_mapa, aes(fill=Gini)) +
  scale_fill_distiller(palette = "Blues",
                       direction = -1, name="Índice de Desigualdade", 
                       limits = c(0.48,0.66))

summary(dados_para_mapa$Populacao)
##     Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
##   450479  2509592  3514952  7065030  8624414 41262199
ggplot() +
  geom_sf(data=dados_para_mapa, aes(fill=Populacao)) +
  scale_fill_distiller(palette = "Reds",
                       direction = 1, name="População de cada estado", 
                       limits = c(450478,41262200))

library(leaflet)
## Warning: pacote 'leaflet' foi compilado no R versão 4.4.2
dados_para_mapa %>%
  leaflet() %>% addTiles() %>% 
  addPolygons(
  fillColor = ~colorQuantile("Blues", IDH)(IDH)) %>%
  addProviderTiles(providers$Esri.WorldImagery)
## Warning: sf layer has inconsistent datum (+proj=longlat +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +no_defs).
## Need '+proj=longlat +datum=WGS84'