Trabalho de Bioestatística

Author

Ana Paula da Silva Costa, Carolina Alves Barcellos, Esther Fernandes da Rocha, Mariana Guida Lopes e Melissa Vieira Rocha.

Variáveis

Lendo o dataset escolhido:

library(readr)
nba_data_processed_3_ <- read_csv("C:/Users/Melissa/Downloads/nba_data_processed (3).csv")
Rows: 705 Columns: 29
── Column specification ────────────────────────────────────────────────────────
Delimiter: ","
chr  (3): Player, Pos, Tm
dbl (26): Age, G, GS, MP, FG, FGA, FG%, 3P, 3PA, 3P%, 2P, 2PA, 2P%, eFG%, FT...

ℹ Use `spec()` to retrieve the full column specification for this data.
ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
View(nba_data_processed_3_)
dados_nba<- nba_data_processed_3_

Mudando o nome das variáveis

colnames(dados_nba)
 [1] "Player" "Pos"    "Age"    "Tm"     "G"      "GS"     "MP"     "FG"    
 [9] "FGA"    "FG%"    "3P"     "3PA"    "3P%"    "2P"     "2PA"    "2P%"   
[17] "eFG%"   "FT"     "FTA"    "FT%"    "ORB"    "DRB"    "TRB"    "AST"   
[25] "STL"    "BLK"    "TOV"    "PF"     "PTS"   
colnames(dados_nba)[3]<- "Idade"
colnames(dados_nba)[1]<- "Jogador"
colnames(dados_nba)[2]<- "Posição"
colnames(dados_nba)[4]<- "Time"
colnames(dados_nba)[7]<- "Minutos Jogados pelo jogador"
colnames(dados_nba)[13]<- "Pontos Marcados pelo jogador"
colnames(dados_nba)[5]<- "Partidas Jogadas pelo jogador"
colnames(dados_nba)[6]<- "Partidas iniciadas pelo jogador"
colnames(dados_nba)[8]<- "Número de arremessos(cestas) pelo jogador"
colnames(dados_nba)[9]<- "Número de tentativas de arremessos (cestas) pelo jogador"
colnames(dados_nba)[11]<- "Número de assistências"
colnames(dados_nba)[10]<- "Número de rebotes pelo jogador"
colnames(dados_nba)[12]<- "Número de Roubadas de bola pelo jogador"

Transformando em fator

str(dados_nba)
spc_tbl_ [705 × 29] (S3: spec_tbl_df/tbl_df/tbl/data.frame)
 $ Jogador                                                 : chr [1:705] "Precious Achiuwa" "Steven Adams" "Bam Adebayo" "Ochai Agbaji" ...
 $ Posição                                                 : chr [1:705] "C" "C" "C" "SG" ...
 $ Idade                                                   : num [1:705] 23 29 25 22 22 24 24 24 27 24 ...
 $ Time                                                    : chr [1:705] "TOR" "MEM" "MIA" "UTA" ...
 $ Partidas Jogadas pelo jogador                           : num [1:705] 55 42 75 59 77 59 36 23 72 68 ...
 $ Partidas iniciadas pelo jogador                         : num [1:705] 12 42 75 22 20 3 3 0 70 68 ...
 $ Minutos Jogados pelo jogador                            : num [1:705] 20.7 27 34.6 20.5 21.8 15 14.7 15.5 27.4 32.6 ...
 $ Número de arremessos(cestas) pelo jogador               : num [1:705] 3.6 3.7 8 2.8 3.2 2.2 2.3 2.1 3.4 5.9 ...
 $ Número de tentativas de arremessos (cestas) pelo jogador: num [1:705] 7.3 6.3 14.9 6.5 6.8 5 4.7 5.4 7.7 9.2 ...
 $ Número de rebotes pelo jogador                          : num [1:705] 0.485 0.597 0.54 0.427 0.47 0.444 0.488 0.384 0.44 0.644 ...
 $ Número de assistências                                  : num [1:705] 0.5 0 0 1.4 1.2 1 1 1.1 2 0 ...
 $ Número de Roubadas de bola pelo jogador                 : num [1:705] 2 0 0.2 3.9 3.5 2.7 2.4 3.1 5.1 0.1 ...
 $ Pontos Marcados pelo jogador                            : num [1:705] 0.269 0 0.083 0.355 0.353 0.384 0.402 0.361 0.399 0.1 ...
 $ 2P                                                      : num [1:705] 3 3.7 8 1.4 2 1.2 1.3 1 1.4 5.9 ...
 $ 2PA                                                     : num [1:705] 5.4 6.2 14.7 2.7 3.4 2.3 2.3 2.3 2.7 9.1 ...
 $ 2P%                                                     : num [1:705] 0.564 0.599 0.545 0.532 0.591 0.515 0.578 0.415 0.518 0.653 ...
 $ eFG%                                                    : num [1:705] 0.521 0.597 0.541 0.532 0.56 0.547 0.591 0.488 0.571 0.645 ...
 $ FT                                                      : num [1:705] 1.6 1.1 4.3 0.9 1.4 0.7 0.8 0.6 1.6 2.4 ...
 $ FTA                                                     : num [1:705] 2.3 3.1 5.4 1.2 1.9 1 1.1 0.9 1.8 3.3 ...
 $ FT%                                                     : num [1:705] 0.702 0.364 0.806 0.812 0.75 0.667 0.692 0.619 0.905 0.733 ...
 $ ORB                                                     : num [1:705] 1.8 5.1 2.5 0.7 1.1 0.3 0.2 0.3 0.8 3.3 ...
 $ DRB                                                     : num [1:705] 4.1 6.5 6.7 1.3 3.7 1.5 1.4 1.5 2.4 6.5 ...
 $ TRB                                                     : num [1:705] 6 11.5 9.2 2.1 4.8 1.7 1.6 1.8 3.3 9.8 ...
 $ AST                                                     : num [1:705] 0.9 2.3 3.2 1.1 1.3 1.8 2.1 1.4 2.3 1.7 ...
 $ STL                                                     : num [1:705] 0.6 0.9 1.2 0.3 0.6 0.5 0.7 0.3 0.9 0.8 ...
 $ BLK                                                     : num [1:705] 0.5 1.1 0.8 0.3 0.6 0.4 0.4 0.3 0.2 1.2 ...
 $ TOV                                                     : num [1:705] 1.1 1.9 2.5 0.7 0.8 0.9 1.3 0.4 1 1.4 ...
 $ PF                                                      : num [1:705] 1.9 2.3 2.8 1.7 1.9 1.5 1.6 1.3 1.6 2.3 ...
 $ PTS                                                     : num [1:705] 9.2 8.6 20.4 7.9 9 6.2 6.3 5.9 10.4 14.3 ...
 - attr(*, "spec")=
  .. cols(
  ..   Player = col_character(),
  ..   Pos = col_character(),
  ..   Age = col_double(),
  ..   Tm = col_character(),
  ..   G = col_double(),
  ..   GS = col_double(),
  ..   MP = col_double(),
  ..   FG = col_double(),
  ..   FGA = col_double(),
  ..   `FG%` = col_double(),
  ..   `3P` = col_double(),
  ..   `3PA` = col_double(),
  ..   `3P%` = col_double(),
  ..   `2P` = col_double(),
  ..   `2PA` = col_double(),
  ..   `2P%` = col_double(),
  ..   `eFG%` = col_double(),
  ..   FT = col_double(),
  ..   FTA = col_double(),
  ..   `FT%` = col_double(),
  ..   ORB = col_double(),
  ..   DRB = col_double(),
  ..   TRB = col_double(),
  ..   AST = col_double(),
  ..   STL = col_double(),
  ..   BLK = col_double(),
  ..   TOV = col_double(),
  ..   PF = col_double(),
  ..   PTS = col_double()
  .. )
 - attr(*, "problems")=<externalptr> 
dados_nba$Posição <- as.factor(dados_nba$Posição)
dados_nba$Time <- as.factor(dados_nba$Time)

dados_nba <- dados_nba[complete.cases(dados_nba),]

Mudando o nome das categorias

levels(dados_nba$Posição)
 [1] "C"     "PF"    "PF-C"  "PF-SF" "PG"    "PG-SG" "SF"    "SF-PF" "SF-SG"
[10] "SG"    "SG-PG"
levels(dados_nba$Posição)<- c("Pivô", "Ala pivô", "Ala pivô/Pivô", "Ala pivô/Ala", "Armador", "Armador/Ala armador", "Ala", "Ala/Ala pivô", "Ala/Ala armador", "Ala armador", "Ala armador/Armador")

Criando uma variável

dados_nba$Faixa_de_Pontos <- cut(dados_nba$`Pontos Marcados pelo jogador`,c(0, 16, 34))
levels(dados_nba$Faixa_de_Pontos)
[1] "(0,16]"  "(16,34]"
levels(dados_nba$Faixa_de_Pontos) <- c("Até 16 pontos", "Mais que 16 pontos e menos que 34")
library(summarytools)

QUANTI X QUALI

a) Pontos Marcados X Posição

Existe relação entre os pontos marcados pelo jogador e sua posição?

Montando o Gráfico:

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(ggplot2)

dados_nba %>%
 filter(Posição %in% c("Pivô", "Ala pivô", "Armador", "Ala", "Ala armador")) %>%
 ggplot() +
 aes(x = Posição, y = `Pontos Marcados pelo jogador`) +
 geom_boxplot(fill = "#FF69B4") +
 labs(x = "Posição do Jogador", y = "Pontos marcados", title = "Pontos marcados em relação à posição do jogador") +
 theme_minimal() +
 theme(plot.title = element_text(size = 18L, face = "bold", hjust = 0.5), axis.title.y = element_text(size = 12L, 
 face = "bold.italic"), axis.title.x = element_text(size = 12L, face = "bold.italic"))

b) Número de Tentativas de arremessos (CESTAS) X Posição

Existe relação entre as tentativas de arremesso (cestas) e a posição do jogador?

Montando o Gráfico:

library(dplyr)
library(ggplot2)

dados_nba %>%
 filter(Posição %in% c("Pivô", "Ala pivô", "Armador", "Ala", "Ala armador")) %>%
 filter(!is.na(`Número de tentativas de arremessos (cestas) pelo jogador`)) %>%
 ggplot() +
 aes(x = Posição, y = `Número de tentativas de arremessos (cestas) pelo jogador`) +
 geom_boxplot(fill = "#997BF4") +
 labs(x = "Posição do Jogador", y = "Tentativas de arremessos", 
 title = "Tentativas de arremessos em relação à posição do jogador") +
 theme_minimal() +
 theme(plot.title = element_text(size = 16L, 
 face = "bold", hjust = 0.5), axis.title.y = element_text(face = "bold.italic"), axis.title.x = element_text(face = "bold.italic"))

QUANTI X QUANTI

a) Número de cestas x Número de Jogos

Qual a relação entre o número de jogos e a quantidade de cestas feitas pelos jogadores?

library(ggplot2)

ggplot(dados_nba) +
 aes(x = `Partidas Jogadas pelo jogador`, y = `Número de arremessos(cestas) pelo jogador`) +
 geom_point(shape = "circle", size = 1.8, colour = "#704439") +
 geom_smooth(span = 1L) +
 labs(x = "Partidas Jogadas", 
 y = "Número de Cestas", title = "Relação entre o número de cestas e as partidas jogadas") +
 theme_minimal() +
 theme(plot.title = element_text(size = 16L, face = "bold", hjust = 0.5), axis.title.y = element_text(face = "bold.italic"), 
 axis.title.x = element_text(face = "bold.italic"))
`geom_smooth()` using method = 'loess' and formula = 'y ~ x'

b) Número de cestas X Tentativas de arremesso

library(ggplot2)

ggplot(dados_nba) +
 aes(x = `Número de tentativas de arremessos (cestas) pelo jogador`, y = `Número de arremessos(cestas) pelo jogador`) +
 geom_point(shape = "circle", size = 1.5, colour = "#5E2010") +
 geom_smooth(span = 1L) +
 labs(x = "Tentativas de arremesso ", 
 y = "Número de cestas ( pontos marcados)", title = "Número de cestas e tentativas de arremesso") +
 theme_minimal() +
 theme(plot.title = element_text(size = 18L, face = "bold.italic", hjust = 0.5), 
 axis.title.y = element_text(size = 14L, face = "bold.italic"), axis.title.x = element_text(size = 14L, 
 face = "bold.italic"))
`geom_smooth()` using method = 'loess' and formula = 'y ~ x'

QUALI X QUALI

Quais posições atingiram uma maior faixa de pontuação?

library(summarytools)
ctable(dados_nba$Posição, dados_nba$Faixa_de_Pontos)
Cross-Tabulation, Row Proportions  
Posição * Faixa_de_Pontos  
Data Frame: dados_nba  

--------------------- ----------------- --------------- ----------------------------------- ------------ --------------
                        Faixa_de_Pontos   Até 16 pontos   Mais que 16 pontos e menos que 34         <NA>          Total
              Posição                                                                                                  
                 Pivô                      101 ( 82.1%)                            0 (0.0%)   22 (17.9%)   123 (100.0%)
             Ala pivô                      111 ( 95.7%)                            0 (0.0%)    5 ( 4.3%)   116 (100.0%)
        Ala pivô/Pivô                        1 (100.0%)                            0 (0.0%)    0 ( 0.0%)     1 (100.0%)
         Ala pivô/Ala                        1 (100.0%)                            0 (0.0%)    0 ( 0.0%)     1 (100.0%)
              Armador                      105 ( 99.1%)                            0 (0.0%)    1 ( 0.9%)   106 (100.0%)
  Armador/Ala armador                        2 (100.0%)                            0 (0.0%)    0 ( 0.0%)     2 (100.0%)
                  Ala                      117 (100.0%)                            0 (0.0%)    0 ( 0.0%)   117 (100.0%)
         Ala/Ala pivô                        1 (100.0%)                            0 (0.0%)    0 ( 0.0%)     1 (100.0%)
      Ala/Ala armador                        2 (100.0%)                            0 (0.0%)    0 ( 0.0%)     2 (100.0%)
          Ala armador                      151 ( 98.7%)                            0 (0.0%)    2 ( 1.3%)   153 (100.0%)
  Ala armador/Armador                        2 (100.0%)                            0 (0.0%)    0 ( 0.0%)     2 (100.0%)
                Total                      594 ( 95.2%)                            0 (0.0%)   30 ( 4.8%)   624 (100.0%)
--------------------- ----------------- --------------- ----------------------------------- ------------ --------------
library(ggplot2)
  
ggplot(dados_nba) + aes(x = Posição, fill = Faixa_de_Pontos) + geom_bar(position = "dodge") + scale_fill_manual(values = c(`Até 16 pontos` = "#FF1099", `Mais que 16 pontos e menos que 34` = "#41CEFF")) + labs(x = "Posição", y = "Faixa de Pontuação", title = "Relação entre a posição e a faixa de pontuação") + theme_minimal()