Preprotools
librería de Python para preprocesamiento de datasets
Actualmente, esta librería se encuentra en desarrollo

preprotools es una librería de python enfocada en el preprocesamiento de datos, está pensada para contener la mayor cantidad de herramientas necesarias que faciliten el preprocesamiento de datos sin la necesidad de tener que recurrir a distintas librerías, está basada en la paquetería más usada como pandas, numpy, matplotlib, entre otras.
Este proyecto está motivado por el aprendizaje de este hermoso lenguaje de programación, específicamente para la ciencia de datos.
La licencia de este proyecto se escogió pensando en la posibilidad de copyleft para que cualquiera que así lo desee, estudie su código y añada funcionalidades pero, lo más importante, sea compartido para que toda la comunidad se beneficie de él.
Nota: La librería se encuentra en desarrollo activo, ha funcionado para mis casos de uso; sin embargo, si encuentras errores de funcionamiento o quieres sugerir alguna funcionalidad, puedes reportarlo mediante un Issue.
Creado por humanos, no por IA.
Requisitos
- Python 3.10+
- Pandas (versión por definir)
Funciones disponibles (actualmente)
var_unique(df, var_names=['all', list]): Muestra los valores únicos de cada variable cualitativa, sivar_names='all'(por defecto) la función lo hará para todas las columnas cualitativas, también tenemos la opción de incluir una lista con los nombres de las variables que deseemosvar_names=['var_1', 'var_2', ..., 'var_n'].normalize(): Normaliza un texto usando descomposición canónica, sirve para eliminar las marcas diacráticas.clean_names(df): Reescribe los nombres usando la convención de nombrado de variables (naming convention) Snake case.
Uso rápido
var_unique()
Para recrear este ejemplo, puedes usar el dataset iris que se encuentra en el directorio datasets.
# Ubicarse en el directorio raíz
import pandas as pd
from preprotools.functions import var_unique
df = pd.read_csv('/datasets/iris.csv')
var_unique(df)
#Output
---------------[Iris-setosa]---------------
['Iris-setosa', 'Iris-versicolor', 'Iris-virginica']
(Número de niveles: 3)
-------------------------------------------normalize()
from preprotools.functions import normalize
text = 'El pingüino ponzoñoso está älëgrë.'
normalized_text = normalize(text)
print(normalized_text)
#Output
El pinguino ponzonoso esta alegre.clean_names()
Usamos el dataset de residencias ubicado en el directorio datasets. clean_names() hace uso de la función normalize().
import pandas as pd
from preprotools.functions import clean_names
path = 'datasets/Certificados_de_Residencia.csv'
da = pd.read_csv(path)
print('Original column names')
print(da.columns)
da_clean = clean_names(da)
print('\nclean_names applied')
print(da_clean.columns)
#Output
Original column names
Index(['Código de trámite', 'Fecha ingreso', 'Estado',
'Calidad en la que actúa', 'Barrio / Corregimiento', 'Alcaldía Local',
'Tipo de documento de identidad', 'Tiempo de residencia Año. Mes'],
dtype='str')
clean_names applied
Index(['codigo_de_tramite', 'fecha_ingreso', 'estado',
'calidad_en_la_que_actua', 'barrio_corregimiento', 'alcaldia_local',
'tipo_de_documento_de_identidad', 'tiempo_de_residencia_ano_mes'],
dtype='str')