Carregar pacotes e funções

library(readxl)
QE <- read_excel("D:/Desktop/Base_de_dados-master/Questionario_Estresse.xls")

Mostrar 6 primeiras linhas

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>

Mostrar estrutura de dados

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 ...

Corrigir 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==1,"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  
## 

Trabalhar a variável estresse

quantile(QE$Estresse, probs=c(0,0.33,0.66,1))
##   0%  33%  66% 100% 
##   12   25   31   44
# 12 a 25 - faixa 1 - aluno tranquilo
# 26 a 31 - faixa 2 - aluno mediano
# 32 a 44 - faixa 3 - aluno estressado


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

Perguntas

#Quem não é do RJ x trabalha

#Quem mora com os pais x não trabalha

#Quem trabalha x não namora

#A turma1 não trabalha tanto quanto as outras

#Quem namora, se estressa mais

table(QE$Namorado_a,QE$Faixas_Estresse)
##      
##       Mediano Muito Estresse Tranquilo
##   NÃO      15             13        20
##   SIM      13             17        17

Reoordenar categorias

QE$Faixas_Estresse<-factor(QE$Faixas_Estresse, levels = c("Tranquilo","Mediano","Muito Estresse"))
#100% na linha
prop.table(table(QE$Namorado_a,QE$Faixas_Estresse),1)
##      
##       Tranquilo   Mediano Muito Estresse
##   NÃO 0.4166667 0.3125000      0.2708333
##   SIM 0.3617021 0.2765957      0.3617021
#100% na coluna
prop.table(table(QE$Namorado_a,QE$Faixas_Estresse),2)
##      
##       Tranquilo   Mediano Muito Estresse
##   NÃO 0.5405405 0.5357143      0.4333333
##   SIM 0.4594595 0.4642857      0.5666667
round(prop.table(table(QE$Namorado_a,QE$Faixas_Estresse),1),2)           
##      
##       Tranquilo Mediano Muito Estresse
##   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)   

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

barplot(tabelafinal)

data.frame(tabelafinal)
##   Namorado_a Faixas_Estresse  Freq
## 1        NÃO       Tranquilo 41.67
## 2        SIM       Tranquilo 36.17
## 3        NÃO         Mediano 31.25
## 4        SIM         Mediano 27.66
## 5        NÃO  Muito Estresse 27.08
## 6        SIM  Muito Estresse 36.17
tabelafinal2<-data.frame(tabelafinal)
tabelafinal
##           Faixas_Estresse
## Namorado_a Tranquilo Mediano Muito Estresse
##        NÃO     41.67   31.25          27.08
##        SIM     36.17   27.66          36.17
colnames(tabelafinal2)<-c("Namora","Faixa de Estresse","Percentual")

Mudança do rótulo

Tabela_final2<-data.frame(tabelafinal) 
colnames(tabelafinal2)<-c("Namora", "Faixa de Estresse", "Percentual")

Dividir Tabela

tabelafinal2 %>% filter(`Faixa de Estresse`=="Tranquilo") %>% flextable() %>%  bg(j = ~ Percentual, bg = "red")
tabelafinal2 %>% filter(`Faixa de Estresse`=="Muito Estresse") %>% flextable()
barplot(tabelafinal, main = "Estresse",
        col = c("red","blue"), 
        beside = TRUE, ylim = c(0,70),
        legend.text = TRUE)

bp<-barplot(tabelafinal, main = "Estresse",
            col = c("red","blue"), 
            beside = TRUE, ylim = c(0,70),
            legend.text = TRUE)

rotulo <- paste0(tabelafinal,"%")

GRÁFICO DE BARRA

bp<- barplot(tabelafinal, main = "Estresse",
             col=c("red","blue"),
             beside=TRUE,
             legend.text=TRUE,ylim = c(0,70))
text(bp, 0, rotulo,cex=1,pos=3,col = "white")

Gráfico de 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"))

Conclusão

Quem namora é maluco!