leblanc: Sectorial Synthetic Data Generator
I. Overview
leblanc is a modular Python library designed for Data Scientists to rapidly generate large-scale synthetic datasets across various business sectors. Built on top of Pandas, NumPy, and Faker, it creates realistic, structured DataFrames suitable for training, testing, and Exploratory Data Analysis (EDA).
New in v0.6.3:
- Object-Oriented Design: Use Classes for better control.
- Internationalization (i18n): Native support for Brazilian Portuguese (
pt_BR). - Data Cleaning Practice: Native support for injecting missing values (
NaN).
Supported Sectors (Classes)
| Class | Data Generated | Key Domain Variables |
|---|---|---|
Tech |
Tech Sales | Unit Price, Quantity, Category |
Food |
Food & Beverages Sales | Expiration Date, Perishability |
Apparel |
Apparel & Fashion Sales | Size, Color, Return Flag |
Financial |
Financial Transactions | Interest Rate, Client Risk Level, Default Flag |
HealthBeauty |
Health & Beauty Sales/Services | Recurrence Days, Sales Channel |
Agribusiness |
Agribusiness Records | Climate Condition, Area (Ha), Production Yield |
Forestry |
Forestry Inventory/Harvest | Planting Age, Management Type, Total Volume ($m^3$) |
II. Installation
leblanc is available on PyPI. Use pip to install the latest stable version:
pip install leblanc
III. Usage Example
1. Basic Usage (English - Default)
The library now uses classes with a standard .build() method.
import pandas as pd
from leblanc import Tech, Agribusiness
# 1. Generate Technology Sales Data
# Uses seed=42 by default for reproducibility
df_tech = Tech(num_records=1000).build()
print("--- Technology Data Sample ---")
print(df_tech.head())
# 2. Generate Agribusiness Records
df_agro = Agribusiness(num_records=500).build()
2. Brazilian Portuguese Support (pt_BR) 🇧🇷
You can generate data localized for Brazil (translated products, categories, and regions) by passing the locale parameter.
from leblanc import Food
# Generates data with 'Leite', 'Café', 'Açougue', etc.
df_food_br = Food(num_records=100, locale='pt_BR').build()
print(df_food_br.head())
3. Data Cleaning Practice (Injecting Nulls)
Perfect for teaching or testing how models handle missing data. You can inject NaN values into specific columns.
from leblanc import Financial
# Simulates a dirty dataset where 'contracted_value' has missing data
df_fin = Financial(num_records=1000).build(missing_data_cols=['contracted_value'])
print(f"Missing values generated: {df_fin['contracted_value'].isnull().sum()}")
IV. License
This project is licensed under the Apache License, Version 2.0. See the LICENSE for details.
🇧🇷 leblanc: Gerador Setorial de Dados Sintéticos
I. Visão Geral
leblanc é uma biblioteca Python modular projetada para a geração rápida de conjuntos de dados sintéticos de grande escala. É construída utilizando Pandas, NumPy e Faker para criar DataFrames estruturados e realistas, adequados para treinamento em Data Science, testes e análise exploratória de dados (EDA).
Novidades na v0.6.3:
Design Orientado a Objetos: Uso de Classes para maior controle.
Internacionalização (i18n): Suporte nativo para Português do Brasil (pt_BR).
Prática de Limpeza de Dados: Suporte nativo para injeção de valores nulos (NaN).
Setores Suportados (Classes)
| Classe | Dados Gerados | Variáveis-Chave do Domínio |
|---|---|---|
Tech |
Vendas de Tecnologia | Preço Unitário, Quantidade, Categoria |
Food |
Vendas de Alimentos e Bebidas | Data de Validade, Perecibilidade |
Apparel |
Vendas de Vestuário e Moda | Tamanho, Cor, Flag de Devolução |
Financial |
Transações Financeiras | Taxa de Juros, Nível de Risco do Cliente, Flag de Inadimplência |
HealthBeauty |
Vendas/Serviços de Saúde e Beleza | Dias de Recorrência, Canal de Vendas |
Agribusiness |
Registros de Agronegócios | Condição Climática, Área (Ha), Produtividade |
Forestry |
Inventário/Colheita Florestal | Idade do Plantio, Tipo de Manejo, Volume Total (m³) |
II. Instalação
leblanc está disponível no PyPI. Use o pip para instalar a versão estável mais recente:
pip install leblanc
III. Exemplos de Uso
1. Uso Básico (Padrão)
A biblioteca agora utiliza classes com um método padronizado .build().
import pandas as pd
from leblanc import Tech, Agribusiness
# 1. Gera Dados de Vendas de Tecnologia
# Usa seed=42 por padrão para reprodutibilidade
df_tech = Tech(num_records=1000).build()
print("--- Amostra de Dados de Tecnologia ---")
print(df_tech.head())
2. Suporte a Português (pt_BR) 🇧🇷
Você pode gerar dados localizados para o Brasil (produtos, categorias e regiões traduzidas) passando o parâmetro locale.
from leblanc import Food
# Gera dados com 'Leite', 'Café', 'Açougue', etc.
df_food_br = Food(num_records=100, locale='pt_BR').build()
print(df_food_br.head())
3. Prática de Limpeza de Dados (Injeção de Nulos)
Perfeito para estudo de como modelos lidam com dados faltantes.
Você pode injetar valores NaN em colunas específicas.
from leblanc import Financial
# Simula um dataset "sujo" onde 'contracted_value' possui dados faltantes
df_fin = Financial(num_records=1000).build(missing_data_cols=['contracted_value'])
print(f"Valores nulos gerados: {df_fin['contracted_value'].isnull().sum()}")
IV. Licença
Este projeto está licenciado sob a Apache License, Version 2.0. Consulte a LICENSE para obter detalhes.
Metadata
Release files for leblanc 0.6.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| leblanc-0.6.3.tar.gz | 17.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| leblanc-0.6.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 39.4 kB
Release files / leblanc-0.6.3.tar.gz
| Download URL | leblanc-0.6.3.tar.gz |
|---|---|
| Size | 17.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
4d83e62093330282e16924891def1f315aa49f30744036ace55f49884c8e7639
|
|
BLAKE2b-256 checksum How to use checksums |
bdca3ecf2ea75f2e000bf188bcba1f83605890bb26bbc6fa8e6b95b2dde5210e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.0
|
Release files / leblanc-0.6.3-py3-none-any.whl
| Download URL | leblanc-0.6.3-py3-none-any.whl |
|---|---|
| Size | 22.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0a3e11405c2811a162a9617f97ed2be3d27614e50736d4e13435e67cebfbdcf9
|
|
BLAKE2b-256 checksum How to use checksums |
8e47decff8b262e5b7f6c4709ce58fc92397f9ab127ab3cad9e02afc8f826936
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.0
|