Este projeto implementa o algoritmo DBSCAN (Density-Based Spatial Clustering of Applications with Noise), um algoritmo de clusterização baseado em densidade.
- Versão mínima: 3.12.5
- Compilador C compatível com C99 ou superior
O projeto está organizado nos seguintes diretórios:
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.
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.
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.
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.
.
├── 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
- Certifique-se de ter o Python 3.12.5 ou superior instalado.
- Instale as dependências listadas no
requirements.txt
:pip install -r requirements.txt
- Abra o terminal.
- Execute o script
run_clustering.bat
:run_clustering.bat
- Certifique-se de que o script
run_clustering.sh
possui permissão de execução:chmod +x run_clustering.sh
- Execute o script:
./run_clustering.sh
Os gráficos e visualizações serão gerados automaticamente e salvos no diretório visual-output
.