Importar base de dados

library(readxl)
QE <- read_excel("Base_de_dados-master/Questionario_Estresse.xls")
#View(Questionario_Estresse)

Olhando a estrutura de dados

head(QE)
## # A tibble: 6 x 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
## # ... with 1 more variable: Horas_estudo <dbl>
str(QE)
## tibble [95 x 10] (S3: tbl_df/tbl/data.frame)
##  $ Aluno       : num [1:95] 1 2 3 4 5 6 7 8 9 10 ...
##  $ Turma       : num [1:95] 1 1 1 1 1 1 1 1 1 1 ...
##  $ Mora_pais   : num [1:95] 2 1 2 2 2 2 2 1 1 1 ...
##  $ RJ          : num [1:95] 2 1 2 2 2 2 2 1 1 1 ...
##  $ Namorado_a  : num [1:95] 2 2 2 1 2 1 2 1 2 2 ...
##  $ Trabalha    : num [1:95] 2 2 2 1 1 1 2 1 1 1 ...
##  $ Desempenho  : num [1:95] 8.89 8.8 8 8.8 8.9 8.1 9.2 8.5 8.7 8.3 ...
##  $ Estresse    : num [1:95] 23 24 25 38 41 25 41 20 26 36 ...
##  $ Créditos    : num [1:95] 27 28 25 21 18 29 26 24 20 49 ...
##  $ Horas_estudo: num [1:95] 27 28 25 30 20 32 25 25 25 59 ...

Corrigindo as variáveis

QE$Trabalha <- ifelse (QE$Trabalha==1,"SIM","NÃO")
QE$Namorado_a <- ifelse(QE$Namorado_a==1,"SIM","NÃO")
QE$RJ <- ifelse(QE$RJ,"SIM","NÃO")
QE$Mora_pais<- ifelse(QE$Mora_pais==1,"SIM","NÃO")
QE$Turma <- as.factor(QE$Turma)

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

#—————————————————- # Combinação de variáveis: Qualitativa x Qualitativa #—————————————————-

Hipóteses:

1. Quem não é do RJ, trabalha.

2. Quem mora com os pais, não trabalha.

3. Quem trabalha, não namora.

4. A turma 1 não trabalha tanto quanto as outras turmas.

5. Quem namora se estressa mais.

Trabalhar a variável estresse de quantitativa para qualitativa

summary(QE$Estresse)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   12.00   22.50   27.00   27.82   33.00   44.00
quantile(QE$Estresse, probs = c(0, 0.33, 0.66, 1))
##   0%  33%  66% 100% 
##   12   25   31   44

de 12 até 25 - faixa 1 - tranquilo

de 26 até 31 - faixa 2 - mediano

de 32 até 44 - faixa 3 - estressado

QE$Faixas_Estresse <- ifelse(QE$Estresse<=25,"Tranquilo",
                          ifelse(QE$Estresse<=31,"Mediano",
                                 "Estressado"))

summary(QE)
##      Aluno      Turma   Mora_pais              RJ             Namorado_a       
##  Min.   : 1.0   1:28   Length:95          Length:95          Length:95         
##  1st Qu.:24.5   2:32   Class :character   Class :character   Class :character  
##  Median :48.0   3:35   Mode  :character   Mode  :character   Mode  :character  
##  Mean   :48.0                                                                  
##  3rd Qu.:71.5                                                                  
##  Max.   :95.0                                                                  
##                                                                                
##    Trabalha           Desempenho       Estresse        Créditos    
##  Length:95          Min.   :5.820   Min.   :12.00   Min.   :15.00  
##  Class :character   1st Qu.:8.500   1st Qu.:22.50   1st Qu.:23.00  
##  Mode  :character   Median :8.700   Median :27.00   Median :24.00  
##                     Mean   :8.594   Mean   :27.82   Mean   :24.95  
##                     3rd Qu.:9.050   3rd Qu.:33.00   3rd Qu.:27.00  
##                     Max.   :9.700   Max.   :44.00   Max.   :49.00  
##                                                     NA's   :1      
##   Horas_estudo   Faixas_Estresse   
##  Min.   :19.00   Length:95         
##  1st Qu.:25.00   Class :character  
##  Median :30.00   Mode  :character  
##  Mean   :30.73                     
##  3rd Qu.:35.00                     
##  Max.   :60.00                     
## 
table(QE$Faixas_Estresse)
## 
## Estressado    Mediano  Tranquilo 
##         30         28         37
table(QE$Namorado_a,QE$Faixas_Estresse)
##      
##       Estressado Mediano Tranquilo
##   NÃO         13      15        20
##   SIM         17      13        17

Reordenar as categorias

QE$Faixas_Estresse <- factor(QE$Faixas_Estresse, levels = c("Tranquilo", "Mediano", "Estressado"))

table(QE$Namorado_a,QE$Faixas_Estresse)
##      
##       Tranquilo Mediano Estressado
##   NÃO        20      15         13
##   SIM        17      13         17
prop.table(table(QE$Namorado_a,QE$Faixas_Estresse),1)
##      
##       Tranquilo   Mediano Estressado
##   NÃO 0.4166667 0.3125000  0.2708333
##   SIM 0.3617021 0.2765957  0.3617021
round(prop.table(table(QE$Namorado_a,QE$Faixas_Estresse),1),2)       
##      
##       Tranquilo Mediano Estressado
##   NÃO      0.42    0.31       0.27
##   SIM      0.36    0.28       0.36
library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library(flextable)

Criação da tabela

Tabela_Final <- QE %>% select(Namorado_a, Faixas_Estresse) %>% table %>% prop.table(2) %>% round(4)*100 

Tabela_Final
##           Faixas_Estresse
## Namorado_a Tranquilo Mediano Estressado
##        NÃO     54.05   53.57      43.33
##        SIM     45.95   46.43      56.67

Mudança do Rótulo

Tabela_Final2<-data.frame(Tabela_Final) 
colnames(Tabela_Final2)<-c("Namora", "Faixa de Estresse", "Percentual")

Dividir tabela

Tabela_Final2 %>% filter(`Faixa de Estresse`=="Tranquilo") %>% flextable()
Tabela_Final2 %>% filter(`Faixa de Estresse`=="Estressado") %>% flextable()

Alterar formatação da tabela

Tabela_Final2 %>% filter(`Faixa de Estresse`=="Tranquilo") %>% flextable() %>%  bg(j = ~ Percentual, bg = "green")
Tabela_Final2 %>% filter(`Faixa de Estresse`=="Estressado") %>% flextable() %>%  bg(j = ~ Percentual, bg = "red")

Rótulos do Gráfico

rotulo <- paste0(Tabela_Final,"%")

Gráfico de Barras

bp<- barplot(Tabela_Final, main = "Estresse",
             col=c("red","blue"),
             beside=TRUE,
             legend.text=TRUE,ylim = c(0,60),
             args.legend = list(x = "topright", bty = "n", inset=c(-0.25, 0)))
text(bp, 0, rotulo,cex=1,pos=3,col = "white")

### Gráfico Mosaico

tabela_p_mosaico<-table(QE$Faixas_Estresse,QE$Namorado_a)
mosaicplot(tabela_p_mosaico,las = 1,main = "Gráfico mosaico",
           color=c("#f5f269","red"))