Metadata-Version: 2.1
Name: dataLibFarah
Version: 0.0.1
Summary: A library for data manipulation, analysis, and visualization.
Home-page: https://github.com/riahiFarah/DataLib.git
Author: Farah Riahi
Author-email: farah.riahi2@gmail.com
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.7
Description-Content-Type: text/markdown
Requires-Dist: pandas (>=1.0)
Requires-Dist: numpy (>=1.19)
Requires-Dist: matplotlib (>=3.0)
Requires-Dist: scikit-learn (>=0.24)
Requires-Dist: scipy (>=1.5)
Provides-Extra: dev
Requires-Dist: pytest (>=6.0) ; extra == 'dev'
Requires-Dist: pytest-cov ; extra == 'dev'
Requires-Dist: twine (>=4.0.2) ; extra == 'dev'

# DataLib

**DataLib** is a Python library designed to simplify data manipulation, analysis, and visualization. It provides tools for both basic and advanced users, enabling efficient handling of datasets, statistical computations, and machine learning tasks.

## Features

### Data Manipulation
- Load and save CSV files.
- Normalize data.
- Handle missing values.

### Statistical Calculations
- Compute mean, median, mode, and standard deviation.
- Perform statistical tests (t-test, chi-squared).

### Data Visualization
- Create scatter plots, bar charts, and histograms.
- Generate advanced visualizations like correlation matrices.

### Advanced Analysis
- Perform linear and polynomial regression.
- Apply PCA for dimensionality reduction.
- Use k-means clustering.
- Perform supervised classification (k-NN, decision trees).

## Installation

1. Clone the repository:
   ```bash
   git clone https://github.com/riahiFarah/DataLib.git
   ```

2. Navigate to the project directory:
   ```bash
   cd dataLibFarah
   ```

3. Install the library:
   ```bash
   pip install .
   ```

## Usage

### Example 1: Load and Save CSV
```python
from datalib import DataLib

df = DataLib.load_csv("data.csv")
DataLib.save_csv(df, "output.csv")
```

### Example 2: Normalize Data
```python
normalized_df = DataLib.normalize_data(df)
```

### Example 3: Perform Linear Regression
```python
x = [[1], [2], [3]]
y = [4, 5, 6]
model, coef, intercept = DataLib.linear_regression(x, y)
```

## Development

### Setting Up for Development
1. Install development dependencies:
   ```bash
   pip install .[dev]
   ```

2. Run tests:
   ```bash
   pytest tests/
   ```

## Contributing
Contributions are welcome! Please open an issue or submit a pull request to discuss potential changes.

## License

This project is licensed under the MIT License. See the `LICENSE` file for details.
