DataForge is a flexible synthetic data generation library for Python, designed to produce realistic, industry-specific datasets. Whether you’re building analytics dashboards, validating data pipelines, or training machine learning models, DataForge offers a fast, safe, and structured way to generate high-quality sample data.
Creating clean, structured, and realistic sample data is often time-consuming.
DataForge helps you:
- ✅ Prototype faster
- ✅ Avoid sensitive real-world data
- ✅ Simulate realistic business scenarios
- ✅ Teach analytics & machine learning concepts
- ✅ Benchmark tools, pipelines, and systems
- Overview
- Key Features
- Available Datasets
- Installation
- How It Works
- Exporting Data
- Limitations & Data Bias
- Use Cases
- Future Plans
- License
- Links
- Author
Access to realistic data remains one of the biggest challenges in analytics and data engineering.
Most data generators produce random values that lack structure, relationships, or analytical relevance.
DataForge focuses on generating usable data — not just fake data.
It provides predefined dataset templates that resemble real-world schemas and scale seamlessly from small samples to large datasets.
- Predefined, analytics-ready dataset templates
- Generate any number of records on demand
- Consistent schemas with logical relationships
- Python-native API (Pandas-friendly)
- Ideal for learning, testing, and demonstrations
DataForge provides industry-specific synthetic datasets with clean structure and realistic business attributes.
| S.No | Dataset Type | About the Dataset | Key Columns Included |
|---|---|---|---|
| 1 | Retail Sales | Simulates ecommerce and retail transactions for pricing, customer segmentation, and profitability analysis. | retail_id, first_name,last_name, date_of_birth, order_date, ship_date, gender, email, quantity, unit_price, unit_cost, sales_amount, cost_amount, phone, address, city, state, country, store_name, store_country, store_type, store_manager, store_phone, store_fax, store_status, product_category, product_subcategory, product, product_desc, product_manufacturer, product_brand, product_class, product_color, product_size, product_weight, product_UOM, product_stock_type, product_status |
| 2 | Employee Dataset | HR dataset for payroll analysis, workforce planning, and attrition analytics. | employee_id, first_name, last_name, start_date, exit_date, date_of_birth, gender, employment_type, salary, email, phone, department, job_title, qualifications, vacancy_type, benefits_list, address, city, state, country, source |
| 3 | Job Market Dataset | Job posting + salary dataset for talent analytics, skill gap analysis & job recommendation engines. | job_id, experience, qualifications, salary_range, location, country, region, latitude, longitude, work_type, job_posting_date, preference, contact_person, contact, job_title, role, job_portal, job_description, benefits, skills, responsibilities, company_name, company_profile |
| 4 | Courier Logistics | Shipment journey data for last-mile routing, SLA tracking & delivery analytics. | Origin, Destination, Pouch No, Date, Sender's Name, Sender Phone, Sender Address, Sender City, Sender State, Sender Pincode, Sender GSTIN, Total Pieces, Actual Wt, Volumetric Wt, Chargeable Wt, Paperwork, Sender Signature, Sender Date, Recipient Name, Recipient Phone, Recipient Address, Recipient City, Receiver State, Receiver Pincode, Description, Value Added Services, Consignment No, Expiry Date, Booking Code, Recipient GSTIN, Receiver Name, Relationship, Company Stamp, Receiver Signature, Receive Date, Tariff, VAS Charges, Total Amount, Mode, Risk Surcharge, Mode of Payment, Nature of Consignment |
| 5 | Healthcare Visits | Clinical visit events for patient journey analytics & hospital operations simulation. | patient_id, visit_id, doctor_id, visit_date, department, diagnosis, treatment, billing_amount, insurance_provider, visit_status |
ℹ️ All datasets are returned as
pandas.DataFrameobjects with appropriate data types and referential consistency wherever applicable.
💡 More datasets are planned. Our goal: 100+ industry-specific datasets.
pip install DataForgeRequires Python 3.7+ or above
DataForge comes with a library of pre-built dataset generators. Just specify the dataset type and how many records you want:
from DataForge import DataForge
forge = DataForge()
# List all available dataset types
print(forge.available_datasets())
# Generate 1,000 fake ecommerce records
df = forge.generate('ecommerce', 1000)
print(df.head())You’ll get a clean pandas.DataFrame ready for export or visualization.
df.to_csv('sample.csv', index=False)
df.to_excel('sample.xlsx', index=False)
df.to_json('sample.json', orient='records')DataForge generates synthetic data, which comes with inherent limitations:
- Data distributions are template-driven
- Patterns may be simplified
- Bias may exist based on design assumptions
Synthetic data generated by DataForge should be validated before use in production decision-making or machine learning evaluation.
DataForge is intended for learning, testing, and demonstration purposes only.
- 🎓 Teaching data science and BI
- 🧪 Testing data pipelines and ETL jobs
- 📈 Building dashboards with Power BI / Tableau
- 🤖 Simulating ML training data
- 🧰 Creating product demos
- 5 starter datasets
- 100+ total industry-specific datasets
This project is licensed under the MIT License.
- 📦 PyPI: https://pypi.org/project/DataForge
- 🧑💻 GitHub: https://github.com/your-org/DataForge
- 📘 Docs: DataForge Docs
Created with ❤️ by Ravender Singh Rana / BI Learner