Objetivo: Criar um DataFrame contendo informações sobre 5 pessoas. Use as funções discutidas no código anterior para explorar e manipular os dados.
Criação de Dataframe:
Exemplo de dados:
| Nome | Idade | Altura_cm | Peso_kg |
|---|---|---|---|
| Ana | 25 | 165 | 68.4 |
| Bruno | 30 | 175 | 80.2 |
| Carla | 22 | 156 | 55.8 |
| Daniel | 35 | 187 | 90.7 |
| Elisa | 28 | 173 | 62.9 |
# Criação do DataFrame com informações de 5 pessoas
df_pessoas <- data.frame(
Nome = c("Ana", "Bruno", "Carla", "Daniel", "Elisa"),
Idade = c(25, 30, 22, 35, 28),
Altura_cm = c(165, 175, 160, 180, 170),
Peso_kg = c(68, 80, 55, 90, 62)
)Exploração de dados:
## 'data.frame': 5 obs. of 4 variables:
## $ Nome : chr "Ana" "Bruno" "Carla" "Daniel" ...
## $ Idade : num 25 30 22 35 28
## $ Altura_cm: num 165 175 160 180 170
## $ Peso_kg : num 68 80 55 90 62
## Nome Idade Altura_cm Peso_kg
## Length:5 Min. :22 Min. :160 Min. :55
## Class :character 1st Qu.:25 1st Qu.:165 1st Qu.:62
## Mode :character Median :28 Median :170 Median :68
## Mean :28 Mean :170 Mean :71
## 3rd Qu.:30 3rd Qu.:175 3rd Qu.:80
## Max. :35 Max. :180 Max. :90
Manipulação de dados:
## Nome Idade Altura_cm Peso_kg
## 3 Carla 22 160 55
## [1] 165 175 160 180 170
## [1] 68 80
Cálculos estatísticos:
## [1] 28
## [1] 28
## [1] 71
## [1] 68
Ordenação:
## [1] 160 165 170 175 180
## [1] 35 30 28 25 22
Visualização:
## Nome Idade Altura_cm Peso_kg
## 1 Ana 25 165 68
## 2 Bruno 30 175 80
## 3 Carla 22 160 55
## Nome Idade Altura_cm Peso_kg
## 4 Daniel 35 180 90
## 5 Elisa 28 170 62
Usando summarise():
mandante <- summarise(dados_serie_a, .by = c('time_mandante', 'tecnico_mandante', 'colocacao_mandante',
'valor_equipe_titular_mandante', 'idade_media_titular_mandante',
'gols_mandante', 'gols_1_tempo_mandante'))
head(mandante)## time_mandante tecnico_mandante colocacao_mandante
## 1 Vasco da Gama Zé Ricardo 6
## 2 Vasco da Gama Zé Ricardo 7
## 3 Vasco da Gama Zé Ricardo 2
## 4 Vasco da Gama Zé Ricardo 12
## 5 Vasco da Gama Zé Ricardo 10
## 6 Ceará SC Lisca 20
## valor_equipe_titular_mandante idade_media_titular_mandante gols_mandante
## 1 12950000 28.5 2
## 2 11600000 28.0 4
## 3 10550000 28.3 2
## 4 9750000 25.7 1
## 5 13350000 27.8 1
## 6 7800000 30.1 1
## gols_1_tempo_mandante
## 1 0
## 2 0
## 3 1
## 4 1
## 5 0
## 6 0
visitante <- summarise(dados_serie_a, .by = c('time_visitante', 'tecnico_visitante', 'colocacao_visitante',
'valor_equipe_titular_visitante', 'idade_media_titular_visitante',
'gols_visitante', 'gols_1_tempo_visitante'))
head(visitante)## time_visitante tecnico_visitante colocacao_visitante
## 1 Atlético-MG Thiago Larghi 13
## 2 América-MG Enderson Moreira 3
## 3 EC Vitória Vágner Mancini 19
## 4 Paraná Rogério Micale 20
## 5 Botafogo Alberto Valentim 14
## 6 Sport Recife Claudinei Oliveira 7
## valor_equipe_titular_visitante idade_media_titular_visitante gols_visitante
## 1 21850000 28.6 1
## 2 9000000 29.0 1
## 3 11080000 27.7 3
## 4 7700000 25.2 0
## 5 14050000 26.7 2
## 6 12600000 30.4 0
## gols_1_tempo_visitante
## 1 1
## 2 1
## 3 1
## 4 0
## 5 2
## 6 0
dados_partidas <- summarise(dados_serie_a, .by = c('data', 'estadio', 'publico', 'gols_partida'))
head(dados_partidas)## data estadio publico gols_partida
## 1 2018-04-15 Estádio São Januário 7197 3
## 2 2018-05-06 Estádio São Januário 3311 5
## 3 2018-05-13 Estádio São Januário 3542 5
## 4 2018-05-31 Estádio São Januário 4584 1
## 5 2018-06-03 Estádio São Januário 9454 3
## 6 2018-07-19 Estádio Presidente Vargas 15197 1
Usando o operador pipe %>%: Refaça
os exercícios do módulo anterior usando o %>%
mandante <- dados_serie_a %>%
summarise(.by = c('time_mandante', 'tecnico_mandante', 'colocacao_mandante',
'valor_equipe_titular_mandante', 'idade_media_titular_mandante',
'gols_mandante', 'gols_1_tempo_mandante'))
head(mandante)## time_mandante tecnico_mandante colocacao_mandante
## 1 Vasco da Gama Zé Ricardo 6
## 2 Vasco da Gama Zé Ricardo 7
## 3 Vasco da Gama Zé Ricardo 2
## 4 Vasco da Gama Zé Ricardo 12
## 5 Vasco da Gama Zé Ricardo 10
## 6 Ceará SC Lisca 20
## valor_equipe_titular_mandante idade_media_titular_mandante gols_mandante
## 1 12950000 28.5 2
## 2 11600000 28.0 4
## 3 10550000 28.3 2
## 4 9750000 25.7 1
## 5 13350000 27.8 1
## 6 7800000 30.1 1
## gols_1_tempo_mandante
## 1 0
## 2 0
## 3 1
## 4 1
## 5 0
## 6 0
visitante <- dados_serie_a %>%
summarise(.by = c('time_visitante', 'tecnico_visitante', 'colocacao_visitante',
'valor_equipe_titular_visitante', 'idade_media_titular_visitante',
'gols_visitante', 'gols_1_tempo_visitante'))
head(visitante)## time_visitante tecnico_visitante colocacao_visitante
## 1 Atlético-MG Thiago Larghi 13
## 2 América-MG Enderson Moreira 3
## 3 EC Vitória Vágner Mancini 19
## 4 Paraná Rogério Micale 20
## 5 Botafogo Alberto Valentim 14
## 6 Sport Recife Claudinei Oliveira 7
## valor_equipe_titular_visitante idade_media_titular_visitante gols_visitante
## 1 21850000 28.6 1
## 2 9000000 29.0 1
## 3 11080000 27.7 3
## 4 7700000 25.2 0
## 5 14050000 26.7 2
## 6 12600000 30.4 0
## gols_1_tempo_visitante
## 1 1
## 2 1
## 3 1
## 4 0
## 5 2
## 6 0
dados_partidas <- dados_serie_a %>%
summarise(.by = c('data', 'estadio', 'publico', 'gols_partida'))
head(dados_partidas)## data estadio publico gols_partida
## 1 2018-04-15 Estádio São Januário 7197 3
## 2 2018-05-06 Estádio São Januário 3311 5
## 3 2018-05-13 Estádio São Januário 3542 5
## 4 2018-05-31 Estádio São Januário 4584 1
## 5 2018-06-03 Estádio São Januário 9454 3
## 6 2018-07-19 Estádio Presidente Vargas 15197 1
Usando select():
## time_mandante tecnico_mandante colocacao_mandante
## 1 Vasco da Gama Zé Ricardo 6
## 2 Vasco da Gama Zé Ricardo 7
## 3 Vasco da Gama Zé Ricardo 2
## 4 Vasco da Gama Zé Ricardo 12
## 5 Vasco da Gama Zé Ricardo 10
## 9 Ceará SC Lisca 20
## valor_equipe_titular_mandante idade_media_titular_mandante gols_mandante
## 1 12950000 28.5 2
## 2 11600000 28.0 4
## 3 10550000 28.3 2
## 4 9750000 25.7 1
## 5 13350000 27.8 1
## 9 7800000 30.1 1
## gols_1_tempo_mandante
## 1 0
## 2 0
## 3 1
## 4 1
## 5 0
## 9 0
## time_visitante tecnico_visitante colocacao_visitante
## 1 Atlético-MG Thiago Larghi 13
## 2 América-MG Enderson Moreira 3
## 3 EC Vitória Vágner Mancini 19
## 4 Paraná Rogério Micale 20
## 5 Botafogo Alberto Valentim 14
## 9 Sport Recife Claudinei Oliveira 7
## valor_equipe_titular_visitante idade_media_titular_visitante gols_visitante
## 1 21850000 28.6 1
## 2 9000000 29.0 1
## 3 11080000 27.7 3
## 4 7700000 25.2 0
## 5 14050000 26.7 2
## 9 12600000 30.4 0
## gols_1_tempo_visitante
## 1 1
## 2 1
## 3 1
## 4 0
## 5 2
## 9 0
## gols_mandante gols_visitante gols_1_tempo_mandante gols_1_tempo_visitante
## 1 2 1 0 1
## 2 4 1 0 1
## 3 2 3 1 1
## 4 1 0 1 0
## 5 1 2 0 2
## 9 1 0 0 0
## gols_partida
## 1 3
## 2 5
## 3 5
## 4 1
## 5 3
## 9 1
## data estadio time_mandante time_visitante
## 1 2018-04-15 Estádio São Januário Vasco da Gama Atlético-MG
## 2 2018-05-06 Estádio São Januário Vasco da Gama América-MG
## 3 2018-05-13 Estádio São Januário Vasco da Gama EC Vitória
## 4 2018-05-31 Estádio São Januário Vasco da Gama Paraná
## 5 2018-06-03 Estádio São Januário Vasco da Gama Botafogo
## 9 2018-07-19 Estádio Presidente Vargas Ceará SC Sport Recife
## tecnico_mandante tecnico_visitante
## 1 Zé Ricardo Thiago Larghi
## 2 Zé Ricardo Enderson Moreira
## 3 Zé Ricardo Vágner Mancini
## 4 Zé Ricardo Rogério Micale
## 5 Zé Ricardo Alberto Valentim
## 9 Lisca Claudinei Oliveira
dados_serie_a %>%
select(time_mandante, time_visitante, tecnico_mandante, tecnico_visitante) %>%
head()## time_mandante time_visitante tecnico_mandante tecnico_visitante
## 1 Vasco da Gama Atlético-MG Zé Ricardo Thiago Larghi
## 2 Vasco da Gama América-MG Zé Ricardo Enderson Moreira
## 3 Vasco da Gama EC Vitória Zé Ricardo Vágner Mancini
## 4 Vasco da Gama Paraná Zé Ricardo Rogério Micale
## 5 Vasco da Gama Botafogo Zé Ricardo Alberto Valentim
## 9 Ceará SC Sport Recife Lisca Claudinei Oliveira
Usando group_by():
media_gols_mandante <- dados_serie_a %>%
group_by(time_mandante) %>%
summarize(media_gols_mandantes = mean(gols_mandante))
head(media_gols_mandante)## # A tibble: 6 × 2
## time_mandante media_gols_mandantes
## <chr> <dbl>
## 1 América-MG 1.18
## 2 Athletico-PR 1.43
## 3 Atlético-GO 1.17
## 4 Atlético-MG 1.76
## 5 Atlético-PR 1.62
## 6 Avaí FC 1.22
soma_gols_visitante <- dados_serie_a %>%
group_by(time_visitante) %>%
summarize(soma_gols_visitante = sum(gols_visitante))
head(soma_gols_visitante)## # A tibble: 6 × 2
## time_visitante soma_gols_visitante
## <chr> <int>
## 1 América-MG 91
## 2 Athletico-PR 104
## 3 Atlético-GO 135
## 4 Atlético-MG 305
## 5 Atlético-PR 117
## 6 Avaí FC 71
media_valor_por_dia <- dados_serie_a %>%
group_by(day(data)) %>%
summarize(media_valor_time_mandante = mean(valor_equipe_titular_mandante),
media_valor_time_visitante = mean(valor_equipe_titular_visitante))
head(media_valor_por_dia)## # A tibble: 6 × 3
## `day(data)` media_valor_time_mandante media_valor_time_visitante
## <int> <dbl> <dbl>
## 1 1 17550737. 16643872.
## 2 2 16094246. 15607526.
## 3 3 19450739. 16603253.
## 4 4 14962086. 16459756.
## 5 5 18039296. 16127872.
## 6 6 18830207. 16205842.
media_publico_estadio <- dados_serie_a %>%
group_by(estadio) %>%
summarize(media_de_publico = mean(publico))
head(media_publico_estadio)## # A tibble: 6 × 2
## estadio media_de_publico
## <chr> <dbl>
## 1 Allianz Parque 22882.
## 2 Arena Barueri 13596.
## 3 Arena Condá 7879.
## 4 Arena Fonte Nova 21175.
## 5 Arena Joinville 9085.
## 6 Arena MRV 34831.
media_gols_estadio_2015 <- dados_serie_a %>%
filter(year(data) == 2015) %>%
group_by(estadio) %>%
summarise(media_gols = mean(gols_partida))
head(media_gols_estadio_2015)## # A tibble: 6 × 2
## estadio media_gols
## <chr> <dbl>
## 1 Allianz Parque 2.94
## 2 Arena Condá 2.21
## 3 Arena Joinville 1.83
## 4 Arena Pantanal 1.5
## 5 Arena da Baixada 2.61
## 6 Arena das Dunas 3
athletico_idade_media <- dados_serie_a %>%
filter(time_mandante == "Athletico-PR") %>%
filter(idade_media_titular_mandante >= 26.2)
head(athletico_idade_media)## data rodada estadio publico time_mandante time_visitante
## 1 2023-07-16 15 Ligga Arena 17091 Athletico-PR EC Bahia
## 2 2023-04-15 1 Ligga Arena 15329 Athletico-PR Goiás
## 3 2023-06-24 12 Ligga Arena 30144 Athletico-PR Corinthians
## 4 2023-08-16 19 Ligga Arena 18444 Athletico-PR Cuiabá-MT
## 5 2023-11-25 35 Ligga Arena 22056 Athletico-PR Vasco da Gama
## 6 2023-12-03 37 Ligga Arena 21056 Athletico-PR Santos
## tecnico_mandante tecnico_visitante colocacao_mandante colocacao_visitante
## 1 8 16
## 2 Paulo Turra Émerson Ávila 3 18
## 3 Wesley Carvalho Vanderlei Luxemburgo 9 15
## 4 Wesley Carvalho Toni Oliveira 6 8
## 5 Wesley Carvalho Ramón Díaz 8 16
## 6 Wesley Carvalho Marcelo Fernandes 8 15
## valor_equipe_titular_mandante valor_equipe_titular_visitante
## 1 5290 2760
## 2 2680 895
## 3 5440 4755
## 4 6160 853
## 5 3220 2395
## 6 6010 2590
## idade_media_titular_mandante idade_media_titular_visitante gols_mandante
## 1 26.2 26.6 2
## 2 26.9 29.0 2
## 3 26.7 26.0 1
## 4 27.3 30.0 2
## 5 28.1 28.0 0
## 6 27.1 28.8 3
## gols_visitante gols_1_tempo_mandante gols_1_tempo_visitante gols_partida
## 1 0 2 0 2
## 2 0 1 0 2
## 3 0 1 0 1
## 4 0 1 0 2
## 5 0 0 0 0
## 6 0 1 0 3
atletico_media_publico_ano <- dados_serie_a %>%
filter(time_visitante == "Atlético-PR") %>%
group_by(year(data)) %>%
summarise(media_publico = mean(publico))
head(atletico_media_publico_ano)## # A tibble: 6 × 2
## `year(data)` media_publico
## <dbl> <dbl>
## 1 2010 12707.
## 2 2011 16130.
## 3 2013 12892.
## 4 2014 11340.
## 5 2015 13578.
## 6 2016 15639.
resultado_parana <- dados_serie_a %>%
filter(time_mandante == "Paraná" | time_visitante == "Paraná") %>%
summarise(
vitorias = sum((time_mandante == "Paraná" & gols_mandante > gols_visitante) |
(time_visitante == "Paraná" & gols_visitante > gols_mandante)),
empates = sum(gols_mandante == gols_visitante),
derrotas = sum((time_mandante == "Paraná" & gols_mandante < gols_visitante) |
(time_visitante == "Paraná" & gols_visitante < gols_mandante))
)
head(resultado_parana)## vitorias empates derrotas
## 1 4 11 23
gols_coritiba_visitante <- dados_serie_a %>%
filter(time_visitante == "Coritiba FC") %>%
group_by(year(data)) %>%
summarise(soma_gols = sum(gols_visitante))
head(gols_coritiba_visitante)## # A tibble: 6 × 2
## `year(data)` soma_gols
## <dbl> <int>
## 1 2011 17
## 2 2012 20
## 3 2013 13
## 4 2014 18
## 5 2015 16
## 6 2016 12