Este projeto foi desenvolvido como parte do Módulo 3 do curso Web Dev Full Stack da Resilia Educação, com foco em banco de dados e análise exploratória de dados (EDA).
O tema escolhido foi League of Legends, utilizando dados reais de partidas competitivas dos anos de 2015, 2016 e 2017.
- ✅ Executar uma análise exploratória dos dados
- ✅ Modelar tabelas para um banco de dados MySQL
- ✅ Desenvolver queries para extrair insights
- ✅ Formular gráficos a partir das queries
- Mais pickados (geral e por posição/ano)
- Mais banidos (com classe primária/secundária)
- Mais vitoriosos por ano
- Mais derrotados por ano
- Jogadores com mais abates totais
- Jogadores que mais abateram solo
- Jogadores mais abatidos
- First bloods mais rápidos (solo e em equipe)
- Torres destruídas por rota (Top, Mid, Bot)
- Tipos de estruturas derrubadas
- Distribuição de kills por função
- Partidas mais longas
- Partidas mais rápidas
- Tempo total de jogo (soma + média)
| Categoria | Gráficos |
|---|---|
| Times | Times em 2015, 2016, 2017 |
| Vitórias | Taxa de vitórias 2015, Vitórias 2016, Vitórias 2017 |
| Abates | Mais abates, Mais abates solo, Mais abatidos |
| Campeões | Mais pickados, Mais banidos, Classes mais pickadas, Classes mais banidas |
| Partidas | Torres destruídas, Partidas mais rápidas, Partida mais longa |
| Tabela | Descrição |
|---|---|
matchinfo |
Informações gerais das partidas (times, resultado, duração, campeões por posição) |
kills |
Registro de abates (killer, victim, assistências, tempo) |
structures |
Estruturas destruídas (torres, inibidores, nexus) |
bans |
Campeões banidos por partida |
champions |
Dados dos campeões (nome, classe primária, classe secundária) |
SELECT topChamp, champ.classe_primaria, COUNT(topChamp) AS countTop
FROM (SELECT blueTopChamp AS topChamp FROM matchinfo
UNION ALL SELECT redTopChamp AS topChamp FROM matchinfo
...) as totalPicks
INNER JOIN champions champ ON topChamp = champ.nome
GROUP BY topChamp ORDER BY countTop DESC LIMIT 25;SELECT killer, COUNT(killer) AS Solou FROM kills
WHERE Assist_1 = '' AND killer != '' AND victim != ''
GROUP BY killer ORDER BY Solou DESC LIMIT 10;SELECT lane, COUNT(type) AS torres_destruidas FROM structures
WHERE lane != '' AND type NOT LIKE 'NEXUS%'
GROUP BY lane;| Categoria | Principais Descobertas |
|---|---|
| Campeões mais pickados | Identificação dos campeões favoritos por temporada e posição |
| Campeões mais banidos | Metagame de bans por classe de campeão |
| Abates solo | Jogadores com maior habilidade individual |
| First blood | Tempos médios e jogadores mais agressivos |
| Torres destruídas | Rotas mais pressionadas (Mid e Bot frequentemente lideram) |
| Duração das partidas | Partidas mais longas vs mais curtas do período |
| Tecnologia | Descrição |
|---|---|
| MySQL | Banco de dados relacional para armazenamento e consultas |
| SQL | Linguagem de consulta para extração de dados |
| Ferramenta de visualização | Geração de gráficos a partir dos resultados das queries |
Vanessa Reis 🐙 |
Suzanne Patrícia 🐙 |
Hudson Uchôa 🐙 |
Leonardo Chaves 🐙 |
Projeto de Análise de Dados - League of Legends Competitive Matches (2015-2017)
Dados reais de partidas competitivas de LoL • Análise exploratória • MySQL • Visualização
Desenvolvido com 💻 e 📊
Dados reais de partidas competitivas de LoL • Análise exploratória • MySQL • Visualização
Desenvolvido com 💻 e 📊















