Skip to main content

Leblanc Banner

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)

Source distribution for leblanc 0.6.3
File Size Uploaded
leblanc-0.6.3.tar.gz 17.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for leblanc 0.6.3
File Interpreter ABI Platform
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

Release history Release notifications | RSS feed

This release

0.6.3 This release

2 release files

0.6.2

2 release files

0.6.1

2 release files

0.6.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page