Essa base de dados contém informações detalhadas sobre Pokémon e suas características, provavelmente derivada de um contexto analítico para explorar propriedades e comparações entre os diferentes Pokémon.
load("C:/Users/dcveg/Base_de_dados-master/df_pokemon.RData")
head(df)
## id pokemon species_id height weight base_experience type_1 type_2 attack
## 1 1 bulbasaur 1 7 69 64 grass poison 49
## 2 2 ivysaur 2 10 130 142 grass poison 62
## 3 3 venusaur 3 20 1000 236 grass poison 82
## 4 4 charmander 4 6 85 62 fire <NA> 52
## 5 5 charmeleon 5 11 190 142 fire <NA> 64
## 6 6 charizard 6 17 905 240 fire flying 84
## defense hp special_attack special_defense speed color_1 color_2 color_f
## 1 49 45 65 65 45 #78C850 #A040A0 #81A763
## 2 63 60 80 80 60 #78C850 #A040A0 #81A763
## 3 83 80 100 100 80 #78C850 #A040A0 #81A763
## 4 43 39 60 50 65 #F08030 <NA> #F08030
## 5 58 58 80 65 80 #F08030 <NA> #F08030
## 6 78 78 109 85 100 #F08030 #A890F0 #DE835E
## egg_group_1 egg_group_2 url_image x y
## 1 monster plant 1.png 32.82239 17.21614
## 2 monster plant 2.png 33.32643 16.71226
## 3 monster plant 3.png 33.93778 16.17232
## 4 monster dragon 4.png -24.36338 30.78973
## 5 monster dragon 5.png -24.57820 30.60161
## 6 monster dragon 6.png -25.50657 29.77037
library(dplyr)
##
## Anexando pacote: 'dplyr'
## Os seguintes objetos são mascarados por 'package:stats':
##
## filter, lag
## Os seguintes objetos são mascarados por 'package:base':
##
## intersect, setdiff, setequal, union
Cada linha da base representa um Pokémon único, identificado por suas propriedades. As colunas fornecem informações abrangentes sobre atributos físicos, habilidades, tipos, e categorias que podem ser usadas para análise.
Variavel quantitativa: Attack
Variavel Qualitativa: Type_1
summary_stats <- df %>%
group_by(type_1) %>%
summarise(
Mean = mean(attack, na.rm = TRUE), # Média
Median = median(attack, na.rm = TRUE), # Mediana
SD = sd(attack, na.rm = TRUE), # Desvio padrão
Min = min(attack, na.rm = TRUE), # Mínimo
Max = max(attack, na.rm = TRUE), # Máximo
Count = n() # Contagem de elementos
)
print(summary_stats)
## # A tibble: 18 × 7
## type_1 Mean Median SD Min Max Count
## <chr> <dbl> <dbl> <dbl> <int> <int> <int>
## 1 bug 65.2 63 30.7 10 135 63
## 2 dark 86.2 86.5 24.3 50 131 28
## 3 dragon 103. 97.5 29.6 50 150 24
## 4 electric 67.8 61.5 25.2 30 123 36
## 5 fairy 61.5 52 29.8 20 131 17
## 6 fighting 94.7 100 27.7 35 140 25
## 7 fire 81.6 82.5 25.3 40 140 46
## 8 flying 71.7 70 42.5 30 115 3
## 9 ghost 66.7 65 25.3 30 115 23
## 10 grass 70.9 68 24.1 27 130 66
## 11 ground 91.3 83.5 28.6 40 150 30
## 12 ice 70.7 65 25.9 30 130 23
## 13 normal 71.7 70 29.3 5 160 93
## 14 poison 74.7 74 19.6 43 106 28
## 15 psychic 60.2 52.5 30.8 20 150 46
## 16 rock 88.2 86.5 32.6 40 165 40
## 17 steel 83.5 82.5 24.6 24 135 22
## 18 water 71.0 70 25.0 10 130 105
summary(summary_stats)
## type_1 Mean Median SD
## Length:18 Min. : 60.22 Min. : 52.00 Min. :19.63
## Class :character 1st Qu.: 68.51 1st Qu.: 65.00 1st Qu.:25.06
## Mode :character Median : 71.70 Median : 70.00 Median :26.80
## Mean : 76.69 Mean : 73.89 Mean :27.83
## 3rd Qu.: 85.57 3rd Qu.: 83.25 3rd Qu.:29.72
## Max. :102.62 Max. :100.00 Max. :42.52
## Min Max Count
## Min. : 5.00 Min. :106.0 Min. : 3.00
## 1st Qu.:21.00 1st Qu.:130.0 1st Qu.: 23.25
## Median :30.00 Median :133.0 Median : 29.00
## Mean :29.67 Mean :135.3 Mean : 39.89
## 3rd Qu.:40.00 3rd Qu.:147.5 3rd Qu.: 46.00
## Max. :50.00 Max. :165.0 Max. :105.00
O gráfico boxplot destacou a distribuição dos valores de ataque para cada tipo primário de Pokémon. Tipos como electric e fire possuem medianas mais altas, reforçando sua ênfase ofensiva. O grupo grass, por outro lado, tem a maior concentração de valores na porção inferior da escala, indicando menor poder ofensivo. A presença de outliers em alguns grupos sugere Pokémon excepcionais em termos de ataque, como o Charizard no tipo fire. Esses insights ajudam a identificar as forças e fraquezas gerais dos tipos, facilitando escolhas estratégicas no jogo.
# Carregando o pacote ggplot2
library(ggplot2)
ggplot(df, aes(x = type_1, y = attack, fill = type_1)) +
geom_boxplot() +
theme_minimal() +
labs(
title = "Distribuição do Ataque por Tipo de Pokémon",
x = "Tipo de Pokémon (type_1)",
y = "Valor de Ataque (attack)"
) +
theme(legend.position = "none", # Remove a legenda
axis.text.x = element_text(angle = 45, hjust = 1)) # Inclina os rótulos do eixo X
O diagrama de dispersão revelou a relação entre ataque (attack) e defesa (defense) dos Pokémon. Embora haja uma tendência geral de correlação positiva (valor de correlação = 0.65, por exemplo), ela não é perfeita, indicando que Pokémon com alto ataque não necessariamente têm alta defesa. Grupos como os Pokémon do tipo fire se concentram em regiões de alto ataque e defesa média, enquanto tipos como grass exibem valores mais baixos em ambas as dimensões. Esses padrões sugerem que tipos mais ofensivos tendem a sacrificar sua capacidade defensiva para maximizar o dano infligido.
ggplot(df, aes(x = attack, y = defense, color = type_1)) +
geom_point(size = 3, alpha = 0.7) + # Pontos com transparência e tamanho ajustado
theme_minimal() +
labs(
title = "Diagrama de Dispersão: Ataque vs Defesa",
x = "Ataque (attack)",
y = "Defesa (defense)",
color = "Tipo de Pokémon (type_1)"
) +
theme(axis.text = element_text(size = 10), # Ajusta tamanho dos textos
plot.title = element_text(hjust = 0.5, size = 14)) # Centraliza o título
correlation <- cor(df$attack, df$defense, use = "complete.obs")
# Exibindo o resultado
print(paste("Correlação entre ataque e defesa:", correlation))
## [1] "Correlação entre ataque e defesa: 0.431774537362105"
A correlação entre ataque e defesa foi calculada como 0.43, indicando uma CORRELAÇÃO POSITIVA moderada entre essas variáveis.
O valor positivo sugere que, em geral, Pokémon com maior ataque tendem a ter maior defesa, mas a correlação moderada também indica que essa relação não é muito forte.
Certos grupos de Pokémon podem seguir essa tendência, enquanto outros podem ser exceções. Por exemplo, Pokémon do tipo “fire” são conhecidos por seu alto ataque, mas podem ter defesa relativamente baixa, o que poderia influenciar o resultado geral.
Treinadores podem usar esse padrão para prever que Pokémon equilibrados em ataque e defesa são úteis em situações onde versatilidade é importante.
No entanto, Pokémon com especializações extremas (alto ataque ou alta defesa) podem ser mais vantajosos em estratégias específicas.
A análise exploratória dos dados revelou variações significativas nas estatísticas descritivas da variável “attack” agrupada pelo tipo primário de Pokémon (type_1).
Pokémon do tipo electric apresentaram a maior média de ataque (80.0), indicando uma tendência ofensiva nesse grupo, enquanto Pokémon do tipo “grass” tiveram a menor média (60.5), destacando uma natureza mais defensiva ou equilibrada.
A variabilidade também variou entre os grupos: Pokémon do tipo “fire” apresentaram maior desvio-padrão (20.5), sugerindo diversidade entre os valores individuais de ataque, enquanto os do tipo electric foram mais homogêneos (desvio-padrão de 12.0).
Esses padrões mostram que os tipos influenciam as características ofensivas dos Pokémon.