66 lines
1.5 KiB
Markdown
66 lines
1.5 KiB
Markdown
# MC_NDCC
|
|
|
|
Multi-Class Normal Distribution Cubic Clusters Dataset Generator
|
|
|
|
## Description
|
|
|
|
MC_NDCC is a data generator that creates synthetic datasets with multiple classes using normally distributed clusters. It generates random centers for multivariate normal distributions, assigns class labels based on separating planes, and randomly generates data points from these distributions.
|
|
|
|
## Features
|
|
|
|
- Generate multi-class datasets with customizable number of samples, features, and classes
|
|
- Random center generation for multivariate normal distributions
|
|
- Automatic class assignment based on separating planes
|
|
- Support for Python and MATLAB implementations
|
|
|
|
## Requirements
|
|
|
|
### Python
|
|
- numpy
|
|
- pandas
|
|
|
|
### MATLAB
|
|
- MATLAB R2019b or later
|
|
|
|
## Usage
|
|
|
|
### Python
|
|
|
|
```python
|
|
from MC_NDCC import MC_NDCC
|
|
|
|
# Initialize an instance (will prompt for inputs)
|
|
ndcc = MC_NDCC()
|
|
|
|
# Get the dataset as a numpy matrix
|
|
dataset = ndcc.get_matrix()
|
|
|
|
# Save the dataset as a CSV file
|
|
ndcc.get_csv('dataset.csv')
|
|
```
|
|
|
|
### MATLAB
|
|
|
|
1. Run `MC_NDCC_matlab/NDCC.m`
|
|
2. Enter the number of samples, features, and classes when prompted
|
|
3. The generated dataset will be saved as `dataset.csv` in the current directory
|
|
|
|
## Project Structure
|
|
|
|
```
|
|
MC_NDCC/
|
|
├── MC_NDCC.py # Python implementation (root)
|
|
├── MC_NDCC_python/ # Python package directory
|
|
├── MC_NDCC_matlab/ # MATLAB implementation
|
|
└── README.md # This file
|
|
```
|
|
|
|
## Authors
|
|
|
|
Dr. Hossein Moosaei, Saeed Khosravi
|
|
|
|
## Date
|
|
|
|
10/09/2020
|
|
|