Wrap Up #

Introdução#

Parabéns, você já é capaz de importar dados, manipulá-los e retirar alguns insights de gráficos e tabelas. Contudo, vimos isso em aulas separadas e talvez você não se sinta confiante para realizar uma análise do começo ao fim. Nesta aula, o objetivo é justamente capacitá-la o ciclo de ciência de dados.

Parte 1 - A pergunta#

Toda análise é motivada por uma pergunta. Essa pergunta pode ter origem uma origem teórica, como normalmente vemos na academia, ou prática, como normalmente vemos em empresas. Independente da origem, uma vez que formulemos a pergunta, vamos para o processo de importar os dados para o nosso ambiente e estruturá-los.

plot of chunk unnamed-chunk-1

Qual será o desafio de hoje? Eu quero que vocês imaginem como parte integrantes da parte técnica de um time de futebol. Hoje, vocês são as cientistas de dados responsáveis por criar o melhor time! Para isso iremos utilizar um banco de dados do FIFA 19 para os jogadores masculinas (infelizmente não achei o feminino…).

library(tidyverse)
data <- readr::read_csv('data/fifa19.zip')

Referências:

Como vamos atacar o problema?#

Nesse exercício, vamos montar a seleção brasileira de futebol seguindo a formação 4 - 1 - 4 - 1 utilizada pelo Tite na Copa do Mundo de 2018. Isso significa que iremos precisar de 4 zagueiros, 1 volante, 2 meias, 2 pontas e 1 atacante. Agora, quais as habilidades necessárias em cada uma dessas posições?

  • Goleiro: habilidades de goleiro (dããã)

  • Defesa: habilidade de defesa (dããã)

  • Volante: decisão, passes curtos e longos.

  • Meias: finalização e passes curtos.

  • Pontas: resistência, finalização com os pés e passes longos.

  • Atacante: resistência, finalização com cabeça e com os pés.

A partir dessas habilidades podemos criar métricas para medir o quão bom um jogador é para uma determinada posição.

Quais variáveis vamos utilizar?#

glimpse(data)
  • Goleiro:

    • Variáveis: GKReflexes e GKPositioning.
  • Defesa:

    • Variáveis: Marking e Interceptions.
  • Volante:

    • Variáveis: LongPassing e Crossing.
  • Meias:

    • Variáveis: ShortPassing e Finishing.
  • Pontas:

    • Variáveis: Finishing, Crossing.
  • Atacante:

    • Variáveis: Finishing, Volleys.

Manipuando Dados#

Filtrando para Brasileiros#

data <- data %>% 
  filter(Nationality == 'Brazil')

Criando nossas métricas:#

data <-  data %>% 
  mutate(metrica_goleiro = GKHandling * GKReflexes,
         metrica_defesa  = Marking * Interceptions,
         metrica_volante = LongPassing * Crossing,
         metrica_meia    = ShortPassing * Finishing,
         metrica_pontas  = Finishing * Crossing,
         metrica_atacante = Finishing * Volleys)

Análise Exploratória#

Goleiros#

ggplot(data, mapping = aes(x = metrica_goleiro)) +
  geom_histogram()

Mas o que raios aconteceu? É de se esperar que nem todo jogador tenha habilidade de goleiro. Logo para ter uma noção da distribuição dos goleiros nos limitar àqueles que jogam nessa posição.

data %>% 
  filter(Position == 'GK') %>% 
  ggplot(data, mapping = aes(x = metrica_goleiro)) +
  geom_histogram()
data %>% 
  ggplot(mapping = aes(x = GKReflexes, y = GKPositioning)) +
  geom_point()
data %>% 
  select(Name, metrica_goleiro) %>% 
  arrange(desc(metrica_goleiro)) %>% 
  head(10)

Zagueiros#

data %>% 
  ggplot(mapping = aes(x = Marking, y = Interceptions)) + 
  geom_point()
ggplot(data, mapping = aes(x = metrica_defesa)) + 
  geom_histogram()
data %>% 
  select(Name, metrica_defesa) %>% 
  arrange(desc(metrica_defesa)) %>% 
  head(10)

Volantes#

data %>% 
  ggplot(mapping = aes(x = LongPassing, y = Crossing)) +
  geom_point()
ggplot(data, mapping = aes(x = metrica_volante)) +
  geom_histogram()
data %>% 
  select(Name, metrica_volante) %>% 
  arrange(desc(metrica_volante)) %>% 
  head(10)

Meias#

data %>% 
  ggplot(mapping = aes(x = ShortPassing, y =  Finishing)) + 
  geom_point()
ggplot(data, mapping = aes(x = metrica_meia)) +
  geom_histogram()
data %>% 
  select(Name, metrica_meia) %>% 
  arrange(desc(metrica_meia)) %>% 
  head(10)

Pontas#

data %>% 
  ggplot(mapping = aes(x = Finishing, y = Crossing)) + 
  geom_point()
ggplot(data, mapping = aes(x = metrica_pontas)) +
  geom_histogram()
data %>% 
  select(Name, metrica_pontas) %>% 
  arrange(desc(metrica_pontas)) %>% 
  head(10)

Atacantes#

data %>% 
  ggplot(mapping = aes(x = Finishing, y = Volleys)) +
  geom_point()
ggplot(data, mapping = aes(x = metrica_atacante)) +
  geom_histogram()
data %>% 
  select(Name, metrica_atacante) %>% 
  arrange(desc(metrica_atacante)) %>% 
  head(10)

Selecionando nossos Jogadores#

goleiro <- data %>%
  arrange(desc(metrica_goleiro)) %>% 
  head(1)

zagueiros <- data %>%
  arrange(desc(metrica_defesa)) %>% 
  head(4)

volante <- data %>%
  arrange(desc(metrica_volante)) %>% 
  head(1)
  
meias <- data %>%
  arrange(desc(metrica_meia)) %>% 
  head(2)
  
pontas <- data %>%
  arrange(desc(metrica_pontas)) %>% 
  head(2)
  
atacante <- data %>%
  arrange(desc(metrica_atacante)) %>% 
  head(1)


nosso_time <- goleiro %>% 
  bind_rows(zagueiros, 
            volante,
            meias,
            pontas,
            atacante)
nosso_time %>% 
  select(Name)

Exercícios#

  1. Imagine que o seu time precisa enviar olheiros para alguns países atrás dos seguintes tipos de jogadores: zagueiros e atacantes. Quais são os três melhores países para cada uma dessas duas posições?

  2. O seu clube está preocupado com a evolução do rendimento dos próprios jogadores ao longo dos anos. Faça um estudo a partir do Overrall para as seguintes posições (Position): goleiro (GK), zagueiro central (CB), ala esquerda (LW).