Nesse trabalho vamos fazer uma análise sobre os dados do df_pokemon.RData
library(readxl)
library(flextable)
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
library(ggplot2)
library(reactable)
library(corrplot)
## corrplot 0.95 loaded
library(ggthemes)
load("C:/Users/dalto/Base_de_dados-master/df_pokemon.RData")
head(df) %>% flextable() %>% theme_alafoli()
id | pokemon | species_id | height | weight | base_experience | type_1 | type_2 | attack | defense | hp | special_attack | special_defense | speed | color_1 | color_2 | color_f | egg_group_1 | egg_group_2 | url_image | x | y |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | bulbasaur | 1 | 7 | 69 | 64 | grass | poison | 49 | 49 | 45 | 65 | 65 | 45 | #78C850 | #A040A0 | #81A763 | monster | plant | 1.png | 32.82239 | 17.21614 |
2 | ivysaur | 2 | 10 | 130 | 142 | grass | poison | 62 | 63 | 60 | 80 | 80 | 60 | #78C850 | #A040A0 | #81A763 | monster | plant | 2.png | 33.32643 | 16.71226 |
3 | venusaur | 3 | 20 | 1,000 | 236 | grass | poison | 82 | 83 | 80 | 100 | 100 | 80 | #78C850 | #A040A0 | #81A763 | monster | plant | 3.png | 33.93778 | 16.17232 |
4 | charmander | 4 | 6 | 85 | 62 | fire | 52 | 43 | 39 | 60 | 50 | 65 | #F08030 | #F08030 | monster | dragon | 4.png | -24.36338 | 30.78973 | ||
5 | charmeleon | 5 | 11 | 190 | 142 | fire | 64 | 58 | 58 | 80 | 65 | 80 | #F08030 | #F08030 | monster | dragon | 5.png | -24.57820 | 30.60161 | ||
6 | charizard | 6 | 17 | 905 | 240 | fire | flying | 84 | 78 | 78 | 109 | 85 | 100 | #F08030 | #A890F0 | #DE835E | monster | dragon | 6.png | -25.50657 | 29.77037 |
df %>% group_by(type_1) %>% summarise(média=mean(speed),
desvio_padrão=sd (speed))
## # A tibble: 18 × 3
## type_1 média desvio_padrão
## <chr> <dbl> <dbl>
## 1 bug 60.1 32.2
## 2 dark 75.4 25.1
## 3 dragon 76.7 22.4
## 4 electric 83.5 27.4
## 5 fairy 48.6 23.3
## 6 fighting 62.9 24.3
## 7 fire 74.5 24.6
## 8 flying 96.3 36.3
## 9 ghost 60.8 27.5
## 10 grass 59.9 25.8
## 11 ground 62.1 27.4
## 12 ice 61.9 23.8
## 13 normal 69.7 27.0
## 14 poison 63.6 22.6
## 15 psychic 72.6 32.6
## 16 rock 52.0 25.7
## 17 steel 54.2 25.5
## 18 water 65.0 22.6
df %>% group_by(type_1) %>% summarise(mínimo = min(speed),
quartil1 = quantile(speed, probs=0.25),
mediana=median(speed),
quartil3 = quantile(speed, probs=0.75),
máximo=max(speed)) %>%
reactable()
df %>% group_by(type_1) %>% summarise(média=mean(speed),
desvio_padrão=sd (speed),
variância= var(speed))
## # A tibble: 18 × 4
## type_1 média desvio_padrão variância
## <chr> <dbl> <dbl> <dbl>
## 1 bug 60.1 32.2 1039.
## 2 dark 75.4 25.1 628.
## 3 dragon 76.7 22.4 502.
## 4 electric 83.5 27.4 749.
## 5 fairy 48.6 23.3 543.
## 6 fighting 62.9 24.3 589.
## 7 fire 74.5 24.6 604.
## 8 flying 96.3 36.3 1317.
## 9 ghost 60.8 27.5 759.
## 10 grass 59.9 25.8 666.
## 11 ground 62.1 27.4 753.
## 12 ice 61.9 23.8 564.
## 13 normal 69.7 27.0 728.
## 14 poison 63.6 22.6 512.
## 15 psychic 72.6 32.6 1060.
## 16 rock 52.0 25.7 661.
## 17 steel 54.2 25.5 649.
## 18 water 65.0 22.6 511.
ggplot(df, aes(x = type_1, y = speed)) +
geom_boxplot(fill="#629111") + theme_minimal() + theme(
plot.background = element_rect(fill = "#cef5d3")) +
labs(
title = "Gráfico 1 - Boxplot",
subtitle ="Média de Velocidade por Tipo de Pokémon",
x = "Tipo de Pokémon",
y = "Domínio de Velocidade")
plot(df$speed, df$weight, pch=19,col="#5b3b96",
main="Gráfico 2 - Diagrama de Dispersão", xlab = "Velocidade", ylab = "Peso do Pokémon")
abline(lsfit(df$speed, df$weight),col="#e36fd9",lwd=5)
library(corrplot)
M <- cor(df[,c("height","weight","base_experience", "attack","defense","hp","special_attack", "special_defense", "speed")])
corrplot(M, method="circle")
corrplot(M, method="color")
col3 <- colorRampPalette(c("#406b11", "#9df2f5", "#f205bb"))
corrplot(M, order="hclust", addrect=2, col=col3(20), tl.col = 'black')
cor(df$speed,df$weight)
## [1] 0.1081207
A tabela apresenta informações estatísticas e serve para comparação da variável “Speed” entre os diferentes tipos de Pokémon, considerando: valor mínimo, primeiro quartil (25%), mediana (50%), terceiro quartil (75%) e valor máximo.
O Pokémon do tipo “Bug” apresenta uma ampla variação, com velocidade mínima de 5, mediana de 57 e atinge uma velocidade máxima de 160. Já Pokémon do tipo “Psychic” possuem velocidades mais elevadas no geral, com uma mediana de 71 e um máximo de 150, o que sugere uma tendência de rapidez. O tipo “dragon” apresenta uma mediana de 80, enquanto seu valor máximo é 110, indicando que a maior parte dos valores está abaixo desse limite superior. Em contraste, o tipo “Rock” mostra valores mais baixos, com uma mediana de 50, máximo de 130 e valores mínimos tão baixos quanto 10, indicando que geralmente são mais lentos. Essas informações são úteis para planejar estratégias de batalha, permitindo identificar quais tipos têm vantagem ou desvantagem em termos de velocidade.
Os tipos como “Eletric” e “Flying” se destacam pela alta velocidade (medianas de 93 e 111), conferindo vantagem em ataques rápidos e controle do ritmo da batalha, enquanto tipos como “Rock” e “Steel”, com medianas de 50, são notavelmente mais lentos, priorizando resistência e defesa em detrimento da agilidade. Criticamente, essa variação reflete um equilíbrio intencional no design dos Pokémon, mas destaca desvantagens para tipos mais lentos, como “Rock”, que podem se tornar vulneráveis a ataques antes de reagirem. A grande amplitude em alguns tipos, como “Bug” (mínimo de 5 e máximo de 160), indica diversidade estratégica interna, mas evidencia que a velocidade, embora essencial, precisa ser complementada por outros atributos para garantir eficácia no combate.
O gráfico boxplot apresenta a distribuição das velocidades médias dos Pokémon agrupados por seus tipos, nos permitindo observar a mediana, o intervalo interquartil e a presença de outliers, refletindo diferenças de desempenho em velocidade. Onde, os tipos “Flying” e “Electric” mostram velocidades medianas altas em relação a outros, enquanto “Dark” e “Ice” possuem medianas mais baixas. Já os outliers estão presentes indicando Pokémon com velocidades atípicas, como no tipo “Bug”, “Poison” e “Rock”. Esse tipo de análise é útil para entender quais tipos de Pokémon tendem a ser mais rápidos ou lentos em média e como suas velocidades se distribuem dentro de cada categoria.
O diagrama de dispersão destaca a relação entre a velocidade dos Pokémon (eixo x) e o peso (eixo y), evidenciando que a maioria dos Pokémon possui peso concentrado em valores baixos independentemente da velocidade, revelando uma ampla variabilidade entre os Pokémon analisados nesses dados. Dessa forma, há alguns pontos dispersos com pesos extremamente altos, indicando casos atípicos, onde na linha rosa podemos perceber que não há uma correlação forte entre peso e velocidade, ou seja, um Pokémon mais pesado não necessariamente será mais rápido ou mais lento.
A matriz de correlação evidencia as relações entre variáveis quantitativas dos Pokémon, como velocidade, ataque, defesa, ataque especial, defesa especial, experiência base, HP, altura e peso. No qual, a cor e o tamanho dos círculos definem a força da correlação, sendo círculos maiores e mais coloridos indicadores de correlações mais fortes (mais próximas de 1 ou -1), enquanto círculos menores e mais claros indicam correlações fracas (próximas de 0). Logo, cada célula representa o coeficiente de correlação entre duas variáveis, variando de -1 a 1, onde 1 indica uma correlação positiva perfeita, -1 uma correlação negativa perfeita e 0 nenhuma correlação linear.
Desse modo, o valor de 0,1081207 aponta para uma correlação muito fraca entre as variáveis correspondentes, sugerindo que elas têm pouca ou nenhuma relação linear. Onde a matriz ajuda a entender, por exemplo, como Pokémon mais altos e pesados tendem a ter HP mais alto ou se há pouca relação entre defesa e velocidade.
Observa-se que peso e altura possuem uma correlação alta (valores próximos de 1), indicando que Pokémon mais altos tendem a ser mais pesados. Já a experiência base apresenta uma correlação moderada com atributos como ataque e HP, sugerindo que Pokémon com maior base de experiência tendem a ter valores elevados nesses atributos. No entanto, a velocidade revela correlações fracas com peso e altura, reforçando que ela é menos influenciada por essas características físicas, mostrando que há variações significativas nas correlações, destacando a diversidade dos atributos entre os Pokémon.