Generación de datos descriptivos sintéticos en PySpark |  de Matt Collins |  enero de 2024

Utilice varios tipos de fuentes de datos para generar rápidamente datos de texto para conjuntos de datos artificiales.

Imagen generada con DALL-E 3

en un Artículo anterior, exploramos la creación de relaciones de muchos a uno entre columnas en un PySpark DataFrame sintético. Este DataFrame solo constaba de información de clave externa y no generamos ninguna información textual que pudiera ser útil en un DataSet de demostración.

Cualquiera que busque poblar un conjunto de datos artificiales, es probable que desee producir datos descriptivos, como información del producto, detalles de ubicación, datos demográficos de los clientes, etc.

En esta publicación, profundizaremos en algunas fuentes que se pueden usar para crear datos de texto sintético con poco esfuerzo y costo, y usaremos las técnicas para crear un DataFrame que contenga detalles del cliente.

Los conjuntos de datos sintéticos son una excelente manera de demostrar de forma anónima su producto de datos, como un sitio web o una plataforma de análisis. Permitir que los usuarios y las partes interesadas interactúen con datos de ejemplo, exponiendo análisis significativos sin violar ningún problema de privacidad con datos confidenciales.

También puede ser excelente para explorar algoritmos de aprendizaje automático, lo que permite a los científicos de datos entrenar modelos en el caso de datos reales limitados.

Las pruebas de rendimiento de las actividades de canalización de ingeniería de datos son otro gran caso de uso para los datos sintéticos, ya que brindan a los equipos la capacidad de aumentar la escala de los datos impulsados ​​a través de una infraestructura e identificar debilidades en el diseño, así como tiempos de ejecución de evaluación comparativa.

En mi caso, actualmente estoy creando un conjunto de datos de ejemplo para probar el rendimiento de algunas capacidades de Power BI en grandes volúmenes, sobre lo cual escribiré a su debido tiempo.

El conjunto de datos contendrá datos de ventas, incluidos los montos de las transacciones y otras características descriptivas, como la ubicación de la tienda, el nombre del empleado y la dirección de correo electrónico del cliente.

Empezando de forma sencilla, podemos utilizar alguna funcionalidad integrada para generar datos de texto aleatorios. Importando el aleatorio y cadena Módulos de Python, podemos usar la siguiente función simple para crear una cadena aleatoria de la longitud deseada.