Metadata-Version: 2.3
Name: petsard
Version: 1.10.1
Summary: Facilitates data generation algorithm and their evaluation processes
Keywords: petsard,data preprocessing,data generation,data evaluation,synthetic data,privacy,privacy enhancing technologies,PETS,anonymization,differential privacy,data science,machine learning
Author: matheme-justyn
Author-email: matheme-justyn <matheme.justyn@gmail.com>
Classifier: Development Status :: 5 - Production/Stable
Classifier: Natural Language :: English
Classifier: Natural Language :: Chinese (Traditional)
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Financial and Insurance Industry
Classifier: Intended Audience :: Legal Industry
Requires-Dist: numpy>=1.26.4,<2 ; extra == 'all'
Requires-Dist: pytz>=2025.2 ; extra == 'all'
Requires-Dist: tzdata>=2025.2 ; extra == 'all'
Requires-Dist: pandas>=2.3.2,<3 ; extra == 'all'
Requires-Dist: pyyaml>=6.0.2,<7 ; extra == 'all'
Requires-Dist: python-dateutil>=2.9.0.post0,<3 ; extra == 'all'
Requires-Dist: requests>=2.32.5,<3 ; extra == 'all'
Requires-Dist: anonymeter>=1.0.0,<2 ; extra == 'all'
Requires-Dist: sdmetrics>=0.23.0,<1 ; extra == 'all'
Requires-Dist: xgboost>=3.0.5 ; extra == 'all'
Requires-Dist: imblearn>=0.0 ; extra == 'all'
Requires-Dist: scikit-learn>=1.7.1,<2 ; extra == 'all'
Requires-Dist: joblib>=1.5.2,<2 ; extra == 'all'
Requires-Dist: numba>=0.61.2,<1 ; extra == 'all'
Requires-Dist: plotly>=6.3.0,<7 ; extra == 'all'
Requires-Dist: scipy>=1.15.3,<2 ; python_full_version < '3.11' and extra == 'all'
Requires-Dist: scipy>=1.16.0,<2 ; python_full_version >= '3.11' and extra == 'all'
Requires-Dist: torch>=2.8.0,<3 ; extra == 'all'
Requires-Dist: fsspec>=2025.9.0 ; extra == 'all'
Requires-Dist: jinja2>=3.1.6,<4 ; extra == 'all'
Requires-Dist: networkx>=3.4.2,<3.5 ; python_full_version < '3.11' and extra == 'all'
Requires-Dist: networkx>=3.5,<4 ; python_full_version >= '3.11' and extra == 'all'
Requires-Dist: sympy>=1.14.0,<2 ; extra == 'all'
Requires-Dist: ipykernel>=7.1.0,<8 ; extra == 'all'
Requires-Dist: ipython>=8.3.0,<9 ; python_full_version < '3.11' and extra == 'all'
Requires-Dist: ipython>=9.4.0,<10 ; python_full_version >= '3.11' and extra == 'all'
Requires-Dist: jupyterlab>=4.4.7,<5 ; extra == 'all'
Requires-Dist: notebook>=7.4.5,<8 ; extra == 'all'
Requires-Dist: pyzmq>=27.0.2,<28 ; extra == 'all'
Requires-Dist: debugpy>=1.8.16,<2 ; extra == 'all'
Requires-Dist: decorator>=5.2.1,<6 ; extra == 'all'
Requires-Dist: ipython-pygments-lexers>=1.1.1,<2 ; python_full_version >= '3.11' and extra == 'all'
Requires-Dist: prompt-toolkit>=3.0.52,<4 ; extra == 'all'
Requires-Dist: psutil>=7.0.0,<8 ; extra == 'all'
Requires-Dist: openpyxl>=3.1.5,<4 ; extra == 'all'
Requires-Dist: pytest>=8.4.2 ; extra == 'dev'
Requires-Dist: pytest-cov>=6.3.0 ; extra == 'dev'
Requires-Dist: ruff>=0.12.12 ; extra == 'dev'
Requires-Dist: ipykernel>=7.1.0,<8 ; extra == 'ds'
Requires-Dist: ipython>=8.3.0,<9 ; python_full_version < '3.11' and extra == 'ds'
Requires-Dist: ipython>=9.4.0,<10 ; python_full_version >= '3.11' and extra == 'ds'
Requires-Dist: jupyterlab>=4.4.7,<5 ; extra == 'ds'
Requires-Dist: notebook>=7.4.5,<8 ; extra == 'ds'
Requires-Dist: openpyxl>=3.1.5,<4 ; extra == 'excel'
Requires-Dist: ipykernel>=7.1.0,<8 ; extra == 'jupyter'
Requires-Dist: ipython>=8.3.0,<9 ; python_full_version < '3.11' and extra == 'jupyter'
Requires-Dist: ipython>=9.4.0,<10 ; python_full_version >= '3.11' and extra == 'jupyter'
Requires-Dist: jupyterlab>=4.4.7,<5 ; extra == 'jupyter'
Requires-Dist: notebook>=7.4.5,<8 ; extra == 'jupyter'
Requires-Python: >=3.10, <3.12
Project-URL: Bug Tracker, https://github.com/nics-dp/petsard/issues
Project-URL: Documentation, https://nics-dp.github.io/petsard/
Project-URL: Repository, https://github.com/nics-dp/petsard
Provides-Extra: all
Provides-Extra: dev
Provides-Extra: ds
Provides-Extra: excel
Provides-Extra: jupyter
Description-Content-Type: text/markdown

<p align="center"><img width=75% src="https://raw.githubusercontent.com/nics-dp/petsard/main/.github/assets/PETsARD-logo.png"></p>

![Python 3.10](https://img.shields.io/badge/python-v3.10-blue.svg)
![Python 3.11](https://img.shields.io/badge/python-v3.11-blue.svg)
![Contributions welcome](https://img.shields.io/badge/contributions-welcome-orange.svg)
![PyPI - Status](https://img.shields.io/pypi/status/petsard)

`PETsARD` (Privacy Enhancing Technologies Analysis, Research, and Development, /pəˈtɑrd/) is a Python library for facilitating synthetic data generation and evaluation processes.

`PETsARD`（隱私強化技術分析、研究與開發）是一套為了促進合成資料生成與評估過程而設計的 Python 程式庫。

---

## **✨ Features 主要功能**

- 🔄 **Data Generation 資料生成**: Multiple synthetic data generation algorithms 多種合成資料生成演算法
- 🔒 **Privacy Evaluation 隱私評估**: Comprehensive privacy risk assessment 全面的隱私風險評估
- 📊 **Utility Metrics 效用指標**: Data quality and utility measurements 資料品質與效用測量
- 🎯 **Flexible Configuration 靈活配置**: YAML-based workflow configuration 基於 YAML 的工作流程配置
- 📦 **Benchmark Datasets 基準資料集**: Built-in benchmark dataset support 內建基準資料集支援

---

## **📚 Documentation 文件**

**Website 網站**: https://nics-dp.github.io/petsard/

### [**📦 Installation 安裝**](https://nics-dp.github.io/petsard/docs/installation/)
- PyPI installation PyPI 安裝
- Docker deployment Docker 部署
- Offline setup 離線設置

### [**🚀 Getting Started 入門指南**](https://nics-dp.github.io/petsard/docs/getting-started/)
- Default synthesis workflow 預設合成流程
- Using external synthetic data 使用外部合成資料

### [**🎯 Evaluation Purpose 評估目的**](https://nics-dp.github.io/petsard/docs/evaluation-purpose/)
- Experiment design 實驗設計
- Fidelity vs. utility 保真度與效用
- Privacy risk estimation 隱私風險估計

### [**⚙️ Data Property Adjustment 資料屬性調整**](https://nics-dp.github.io/petsard/docs/data-property-adjustment/)
- Long-tail distribution handling 長尾分佈處理
- Time anchoring 時間錨定
- Uniform encoding 統一編碼

### [**📝 YAML Configuration YAML 配置**](https://nics-dp.github.io/petsard/docs/petsard-yaml/)
- Executor, Loader, Splitter 執行器、載入器、分割器
- Preprocessor, Synthesizer, Postprocessor 前處理器、合成器、後處理器
- Evaluator, Constrainer, Reporter 評估器、約束器、報告器

### [**📋 Schema YAML 綱要配置**](https://nics-dp.github.io/petsard/docs/schema-yaml/)
- Data types and logical types 資料型別與邏輯型別
- Attribute parameters 屬性參數
- Statistics configuration 統計配置

### [**🐍 Python API**](https://nics-dp.github.io/petsard/docs/python-api/)
- Programmatic usage API 參考 API reference

### [**👨‍💻 Developer Guide 開發者指南**](https://nics-dp.github.io/petsard/docs/developer-guide/)
- Development setup 開發環境設置
- Test coverage 測試覆蓋率

### [**📚 Glossary 詞彙表**](https://nics-dp.github.io/petsard/docs/glossary/)
- Key terminology 關鍵術語

### [**⚠️ Error Handling 錯誤處理**](https://nics-dp.github.io/petsard/docs/error-handling/)
- Common errors and solutions 常見錯誤與解決方案

---

## **🛠️ Development 開發**

### Requirements 需求

- Python 3.10 or 3.11 Python 3.10 或 3.11

### Quick Start 快速開始

```bash
# Install 安裝
pip install petsard

# Run tests 執行測試
pip install petsard[dev]
pytest
```

---

## **📄 License 授權**

This project is licensed under MIT License. See [LICENSE](LICENSE) for details.

本專案採用 MIT License 授權。詳見 [LICENSE](LICENSE)。

---

## **🔗 Links 連結**

- **GitHub**: https://github.com/nics-dp/petsard
- **Documentation 文件**: https://nics-dp.github.io/petsard/
- **PyPI**: https://pypi.org/project/petsard/
- **Issues 問題追蹤**: https://github.com/nics-dp/petsard/issues

---

## **📧 Contact 聯絡**

For questions or support: 如有問題或需要支援：
- Open an issue on GitHub 在 GitHub 開啟 issue
- Check the documentation 查看文件