Skip to content

Maryucha/graph_pokemon

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pokemon Graph Database

Este projeto utiliza dados da PokeAPI para criar um banco de dados de grafos no Neo4j. Ele permite explorar e visualizar conexões entre os primeiros 151 Pokémon, como tipos, habilidades e evoluções.


Recursos

  1. Pipeline ETL:

    • Extração de dados da PokeAPI.
    • Transformação dos dados para criar nós e relacionamentos.
    • Carregamento no banco de grafos Neo4j.
  2. Banco de Grafos:

    • Nós: Pokémon, Tipos, Habilidades.
    • Arestas:
      • PERTENCE_A: Liga Pokémon aos seus tipos.
      • TEM_HABILIDADE: Liga Pokémon às suas habilidades.
      • EVOLUI_PARA: Liga Pokémon às suas evoluções.
  3. Consultas em Cypher:

    • Explore Pokémon por tipo.
    • Visualize cadeias evolutivas.
    • Descubra habilidades específicas de Pokémon.

Requisitos

  1. Dependências do Projeto:

  2. Instale as Dependências: Certifique-se de instalar os pacotes listados no requirements.txt:

      pip install -r requirements.txt
  3. Configuração do Neo4j: Certifique-se de que o Neo4j esteja disponível em:


Como Executar

  1. Clone o Repositório: Repositório com a base do projeto:
   git clone https://github.com/maryucha/graph_pokemon.git

    # navegue até o repositório clonado
   cd graph_pokemon
  1. Inicie o Neo4j via compose: Certifique-se de que o Neo4j esteja disponível em localhost:7474:
    docker compose up --build -d
  1. Prepare seu ambiente instalando as bibliotecas necessárias: Prepare seu ambiente na sua ide utilizando o arquivo requiremnts.txt
    pip install -r requirements.txt
  1. Execute o Jupyter Notebook: No Jupyter Notebook, execute o script principal para:
    jupyter notebook

Execute a pipeline para:

  • jupyter: Para desenvolvimento e análise.
  • pandas: Manipulação de dados.
  • requests: Requisições HTTP para a PokeAPI.
  • neo4j: Driver para conexão com o banco de grafos.

Consultas

  1. Todos os pokemons
    MATCH (p:Poke) RETURN p

Grafo

  1. Chamar pelo nome
    MATCH (p:Poke{name:'pikachu'}) RETURN p

Grafo

  1. Pokémon por Tipo
    MATCH (p:Poke)-[:PERTENCE_A]->(t:Type {name: "fire"}) RETURN p.name

Grafo

  1. Habilidades de um Pokémon
    MATCH (p:Poke {name: "pikachu"})-[:TEM_HABILIDADE]->(a:Ability) RETURN a.name

Grafo

About

Banco de dados de grafos no Neo4j utilizando dados da PokeAPI para explorar relações entre Pokémon, como tipos, habilidades e evoluções. ------ Graph database in Neo4j using PokeAPI data to explore Pokémon relationships, such as types, abilities, and evolutions.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors