# DataLib
[](https://github.com/elayeboussama/oussama_datalib/actions/workflows/test.yml)
A simplified Python library for data manipulation, analysis, and machine learning.
## Features
- Data Processing: Loading, cleaning, and preprocessing functions
- Analysis: Linear regression, polynomial regression, and multiple regression
- Statistics: Basic statistical calculations
- Visualization: Various plotting functions using matplotlib and seaborn
- Machine Learning:
- Supervised Learning: KNN, Decision Trees, Random Forests
- Unsupervised Learning: K-means, PCA, Gaussian Mixture
- Reinforcement Learning: Basic Q-Learning and SARSA
## Installation
You can install the package directly from PyPI:
```bash
pip install oussama-datalib
```
Or using Poetry:
```bash
poetry add oussama-datalib
```
## Usage
Here's a simple example of using DataLib:
```python
from src.datalib.data_processing import load_csv, fill_missing_values
from src.datalib.visualization import plot_histogram
import pandas as pd
# Load data
df = pd.read_csv('your_data.csv')
# Fill missing values
df = fill_missing_values(df, 'column_name', method='mean')
# Create visualization
plot_histogram(df, 'column_name')
```
For a complete example, check out `example/execution_example.py`. To run it:
```bash
poetry run python example/execution_example.py
```
## Testing
To run the tests:
```bash
poetry run pytest
```
## Documentation
To build the documentation:
```bash
poetry run sphinx-build -b html docs docs/build
```
Then open `docs/build/index.html` in your browser.
## Project Structure
```
datalib/
├── src/
│ └── datalib/
│ ├── init.py
│ ├── analysis.py
│ ├── data_processing.py
│ ├── reinforcement.py
│ ├── statistics.py
│ ├── supervised.py
│ ├── unsupervised.py
│ └── visualization.py
├── tests/
│ ├── conftest.py
│ ├── test_analysis.py
│ ├── test_data_processing.py
│ ├── test_reinforcement.py
│ ├── test_statistics.py
│ ├── test_supervised.py
│ ├── test_unsupervised.py
│ └── test_visualization.py
├── docs/
│ ├── conf.py
│ ├── index.rst
│ ├── modules.rst
│ └── build/
│ ├── html/
│ ├── doctrees/
│ └── static/
├── example/
│ └── execution_example.py
├── .gitignore
├── LICENSE
├── README.md
├── pyproject.toml
├── setup.py
└── .pre-commit-config.yaml
```
## Dependencies
- Python ≥ 3.10
- NumPy ≥ 1.21.0
- Pandas ≥ 2.2.3
- Matplotlib ≥ 3.4.0
- Seaborn ≥ 0.11.0
- Scikit-learn ≥ 1.0.0
- SciPy ≥ 1.7.0
## License
MIT License
## Author
Oussama ELAYEB (elayeb.oussama2020@gmail.com)
## Development Setup
1. Clone the repository
2. Install dependencies:
```bash
poetry install
```
3. Install pre-commit hooks:
```bash
poetry run pre-commit install
```
4. Run tests:
```bash
poetry run pytest
```
5. Run linting:
```bash
poetry run flake8
poetry run black .
poetry run isort .
```
## Contributing
Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
1. Fork the repository
2. Create your feature branch (`git checkout -b feature/AmazingFeature`)
3. Commit your changes (`git commit -m 'Add some AmazingFeature'`)
4. Push to the branch (`git push origin feature/AmazingFeature`)
5. Open a Pull Request
## Contact
For questions, feedback, or support:
- Email: elayeb.oussama2020@gmail.com
- GitHub Issues: [Create an issue](https://github.com/elayeboussama/oussama_datalib/issues)
## Acknowledgments
- Thanks to the Python community for the amazing libraries that made this project possible
- Special thanks to all contributors who help improve this library
Raw data
{
"_id": null,
"home_page": "https://github.com/elayeboussama/oussama_datalib",
"name": "oussama_datalib",
"maintainer": null,
"docs_url": null,
"requires_python": "<4.0,>=3.10",
"maintainer_email": null,
"keywords": "data, analysis, machine learning, visualization",
"author": "Oussama ELAYEB",
"author_email": "elayeb.oussama2020@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/30/09/cae054bcd7d560e9f0f6b768054775a501f4f50af3a01269b0606b7834cd/oussama_datalib-0.2.2.tar.gz",
"platform": null,
"description": "# DataLib\n\n[](https://github.com/elayeboussama/oussama_datalib/actions/workflows/test.yml)\n\nA simplified Python library for data manipulation, analysis, and machine learning.\n\n## Features\n\n- Data Processing: Loading, cleaning, and preprocessing functions\n- Analysis: Linear regression, polynomial regression, and multiple regression\n- Statistics: Basic statistical calculations\n- Visualization: Various plotting functions using matplotlib and seaborn\n- Machine Learning:\n - Supervised Learning: KNN, Decision Trees, Random Forests\n - Unsupervised Learning: K-means, PCA, Gaussian Mixture\n - Reinforcement Learning: Basic Q-Learning and SARSA\n\n## Installation\n\nYou can install the package directly from PyPI:\n\n```bash\npip install oussama-datalib\n```\nOr using Poetry:\n\n```bash\npoetry add oussama-datalib\n```\n \n\n## Usage\n\nHere's a simple example of using DataLib:\n\n```python\nfrom src.datalib.data_processing import load_csv, fill_missing_values\nfrom src.datalib.visualization import plot_histogram\nimport pandas as pd\n\n# Load data\ndf = pd.read_csv('your_data.csv')\n\n# Fill missing values\ndf = fill_missing_values(df, 'column_name', method='mean')\n\n# Create visualization\nplot_histogram(df, 'column_name')\n```\n\nFor a complete example, check out `example/execution_example.py`. To run it:\n\n```bash\npoetry run python example/execution_example.py\n```\n\n## Testing\n\nTo run the tests:\n\n```bash\npoetry run pytest\n```\n\n## Documentation\n\nTo build the documentation:\n\n```bash\npoetry run sphinx-build -b html docs docs/build\n```\n\nThen open `docs/build/index.html` in your browser.\n\n## Project Structure\n\n```\ndatalib/\n\u251c\u2500\u2500 src/\n\u2502 \u2514\u2500\u2500 datalib/\n\u2502 \u251c\u2500\u2500 init.py\n\u2502 \u251c\u2500\u2500 analysis.py\n\u2502 \u251c\u2500\u2500 data_processing.py\n\u2502 \u251c\u2500\u2500 reinforcement.py\n\u2502 \u251c\u2500\u2500 statistics.py\n\u2502 \u251c\u2500\u2500 supervised.py\n\u2502 \u251c\u2500\u2500 unsupervised.py\n\u2502 \u2514\u2500\u2500 visualization.py\n\u251c\u2500\u2500 tests/\n\u2502 \u251c\u2500\u2500 conftest.py\n\u2502 \u251c\u2500\u2500 test_analysis.py\n\u2502 \u251c\u2500\u2500 test_data_processing.py\n\u2502 \u251c\u2500\u2500 test_reinforcement.py\n\u2502 \u251c\u2500\u2500 test_statistics.py\n\u2502 \u251c\u2500\u2500 test_supervised.py\n\u2502 \u251c\u2500\u2500 test_unsupervised.py\n\u2502 \u2514\u2500\u2500 test_visualization.py\n\u251c\u2500\u2500 docs/\n\u2502 \u251c\u2500\u2500 conf.py\n\u2502 \u251c\u2500\u2500 index.rst\n\u2502 \u251c\u2500\u2500 modules.rst\n\u2502 \u2514\u2500\u2500 build/\n\u2502 \u251c\u2500\u2500 html/\n\u2502 \u251c\u2500\u2500 doctrees/\n\u2502 \u2514\u2500\u2500 static/\n\u251c\u2500\u2500 example/\n\u2502 \u2514\u2500\u2500 execution_example.py\n\u251c\u2500\u2500 .gitignore\n\u251c\u2500\u2500 LICENSE\n\u251c\u2500\u2500 README.md\n\u251c\u2500\u2500 pyproject.toml\n\u251c\u2500\u2500 setup.py\n\u2514\u2500\u2500 .pre-commit-config.yaml\n```\n\n## Dependencies\n\n- Python \u2265 3.10\n- NumPy \u2265 1.21.0\n- Pandas \u2265 2.2.3\n- Matplotlib \u2265 3.4.0\n- Seaborn \u2265 0.11.0\n- Scikit-learn \u2265 1.0.0\n- SciPy \u2265 1.7.0\n\n## License\n\nMIT License\n\n## Author\n\nOussama ELAYEB (elayeb.oussama2020@gmail.com)\n\n## Development Setup\n\n1. Clone the repository\n2. Install dependencies:\n```bash\npoetry install\n```\n\n3. Install pre-commit hooks:\n```bash\npoetry run pre-commit install\n```\n\n4. Run tests:\n```bash\npoetry run pytest\n```\n\n5. Run linting:\n```bash\npoetry run flake8\npoetry run black .\npoetry run isort .\n```\n\n\n## Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.\n\n1. Fork the repository\n2. Create your feature branch (`git checkout -b feature/AmazingFeature`)\n3. Commit your changes (`git commit -m 'Add some AmazingFeature'`)\n4. Push to the branch (`git push origin feature/AmazingFeature`)\n5. Open a Pull Request\n\n## Contact\n\nFor questions, feedback, or support:\n- Email: elayeb.oussama2020@gmail.com\n- GitHub Issues: [Create an issue](https://github.com/elayeboussama/oussama_datalib/issues)\n\n## Acknowledgments\n\n- Thanks to the Python community for the amazing libraries that made this project possible\n- Special thanks to all contributors who help improve this library\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Simplified data manipulation and analysis tools",
"version": "0.2.2",
"project_urls": {
"Homepage": "https://github.com/elayeboussama/oussama_datalib",
"Repository": "https://github.com/elayeboussama/oussama_datalib"
},
"split_keywords": [
"data",
" analysis",
" machine learning",
" visualization"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "b359e09bb4a253c91536f46e30bbe77022611c22fb2ce093d9b259659bf66f46",
"md5": "006dc637cf2fcfe9edb708999870ad18",
"sha256": "aa21214de34fc022eaf4252a76211f9732d1927a4fa55426d3e6e34859de7e32"
},
"downloads": -1,
"filename": "oussama_datalib-0.2.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "006dc637cf2fcfe9edb708999870ad18",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<4.0,>=3.10",
"size": 9236,
"upload_time": "2024-12-22T18:10:43",
"upload_time_iso_8601": "2024-12-22T18:10:43.618032Z",
"url": "https://files.pythonhosted.org/packages/b3/59/e09bb4a253c91536f46e30bbe77022611c22fb2ce093d9b259659bf66f46/oussama_datalib-0.2.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3009cae054bcd7d560e9f0f6b768054775a501f4f50af3a01269b0606b7834cd",
"md5": "60ab2631cbe6391ec362062f4c800225",
"sha256": "9295afb82b206b847677e7ee8382da8a96ae082cdb7bb3bb8f187952dd1cc1dc"
},
"downloads": -1,
"filename": "oussama_datalib-0.2.2.tar.gz",
"has_sig": false,
"md5_digest": "60ab2631cbe6391ec362062f4c800225",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<4.0,>=3.10",
"size": 8504,
"upload_time": "2024-12-22T18:10:47",
"upload_time_iso_8601": "2024-12-22T18:10:47.520577Z",
"url": "https://files.pythonhosted.org/packages/30/09/cae054bcd7d560e9f0f6b768054775a501f4f50af3a01269b0606b7834cd/oussama_datalib-0.2.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-12-22 18:10:47",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "elayeboussama",
"github_project": "oussama_datalib",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "numpy",
"specs": [
[
">=",
"1.21.0"
]
]
},
{
"name": "pandas",
"specs": [
[
">=",
"1.3.0"
]
]
},
{
"name": "matplotlib",
"specs": [
[
">=",
"3.4.0"
]
]
},
{
"name": "seaborn",
"specs": [
[
">=",
"0.11.0"
]
]
},
{
"name": "scikit-learn",
"specs": [
[
">=",
"1.0.0"
]
]
},
{
"name": "scipy",
"specs": [
[
">=",
"1.7.0"
]
]
}
],
"lcname": "oussama_datalib"
}