Skip to content

pauloDiego-sudo/DBSCAN-SEMB

Repository files navigation

DBSCAN - Implementação em C

Este projeto implementa o algoritmo DBSCAN (Density-Based Spatial Clustering of Applications with Noise), um algoritmo de clusterização baseado em densidade.

Python

  • Versão mínima: 3.12.5

C

  • Compilador C compatível com C99 ou superior

Outras Dependências

Estrutura do Projeto

O projeto está organizado nos seguintes diretórios:

dados

Este diretório contém os arquivos com os dados originais. Os arquivos disponíveis são:

  • basic5.csv: Dados básicos de teste para o algoritmo.
  • clustering_results.csv: Resultados da clusterização gerados pelo algoritmo.
  • df_principal.csv: Dataset principal utilizado para a clusterização.
  • labels_principal.csv: Rótulos associados aos dados principais.

implementation-c

Este diretório contém a implementação do algoritmo DBSCAN em C, com os seguintes arquivos:

  • basic5_points_array.h: Arquivo de cabeçalho contendo o array com os pontos de um conjunto básico.
  • dbscan.c: Implementação do algoritmo DBSCAN em C.
  • dbscan.h: Arquivo de cabeçalho para a implementação do DBSCAN.
  • main.c: Programa principal que executa o DBSCAN.
  • tumor_points_array.h: Arquivo de cabeçalho contendo os pontos do dataset RNA (Hi-Seq) PANCAN.

visual-output

Este diretório contém saídas visuais e diagramas gerados para auxiliar na análise e documentação do projeto:

  • basic5_scatter_plot.png: Gráfico de dispersão do conjunto básico de dados.
  • Classes-Reais-com-legenda.png: Visualização dos dados com classes reais e legendas.
  • clustering_scatter_plot.png: Gráfico de dispersão dos clusters gerados pelo DBSCAN.
  • clustering_sklearn_python.png: Comparação da clusterização com a biblioteca Scikit-Learn em Python.
  • dbscan_flowchart.puml: Diagrama de fluxo em formato PlantUML do algoritmo DBSCAN.
  • dbscan_implementation_flowchart.puml: Diagrama de fluxo detalhado da implementação do DBSCAN.

Arquivos Adicionais

  • README.md: Este arquivo de documentação.
  • run_clustering.bat: Script para executar a clusterização e gerar visualizações em sistemas Windows.
  • run_clustering.sh: Script para executar a clusterização e gerar visualizações em sistemas Linux.
  • visual_results.py: Script Python que gera os gráficos e visualizações, executado automaticamente pelos scripts de execução.

Estrutura em Forma de Árvore

.
├── dados
│   ├── basic5.csv
│   ├── clustering_results.csv
│   ├── df_principal.csv
│   └── labels_principal.csv
├── implementation-c
│   ├── basic5_points_array.h
│   ├── dbscan.c
│   ├── dbscan.h
│   ├── main.c
│   └── tumor_points_array.h
├── visual-output
│   ├── basic5_scatter_plot.png
│   ├── Classes-Reais-com-legenda.png
│   ├── clustering_scatter_plot.png
│   ├── clustering_sklearn_python.png
│   ├── dbscan_flowchart.puml
│   └── dbscan_implementation_flowchart.puml
├── README.md
├── run_clustering.bat
├── run_clustering.sh
└── visual_results.py

Como Executar

Instalação de Dependências

  1. Certifique-se de ter o Python 3.12.5 ou superior instalado.
  2. Instale as dependências listadas no requirements.txt:
    pip install -r requirements.txt

Em Sistemas Windows

  1. Abra o terminal.
  2. Execute o script run_clustering.bat:
    run_clustering.bat

Em Sistemas Linux

  1. Certifique-se de que o script run_clustering.sh possui permissão de execução:
    chmod +x run_clustering.sh
  2. Execute o script:
    ./run_clustering.sh

Os gráficos e visualizações serão gerados automaticamente e salvos no diretório visual-output.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages