0Pricing
Learn AI with Python · Lección

Almacenamiento eficiente de datos recopilados

Guardado en CSV/JSON/Parquet, anexado seguro, eliminación de duplicados y recopilación incremental.

Almacenamiento eficiente de datos recopilados es una lección gratuita de Learn AI with Python en CoddyKit. Esta es la lección 3 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Learn AI with Python, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Learn AI with Python incluye 4 lecciones en total.

De las respuestas sin procesar a los datos almacenados

Después de recopilar los datos, debe almacenarlos para poder volver a cargarlos, compartirlos y analizarlos. El formato adecuado y algunos buenos hábitos pueden mejorar mucho la velocidad y el uso del disco.

En esta lección se explican CSV, Parquet, la incorporación de lotes y la deduplicación.

De JSON a DataFrame

Las respuestas de las API suelen ser listas de diccionarios. pd.DataFrame las convierte directamente en una tabla lista para almacenar.

import pandas as pd

records = [
    {"id": 1, "name": "A", "score": 9.5},
    {"id": 2, "name": "B", "score": 8.0},
]
df = pd.DataFrame(records)
print(df)

Almacenamiento en CSV con df.to_csv

CSV es un formato universal y legible para las personas. Guarde los datos con to_csv; pase index=False para que el índice de filas no se escriba como una columna adicional.

df.to_csv("data.csv", index=False)

# Reload
df2 = pd.read_csv("data.csv")

Limitaciones de CSV

CSV es práctico, pero presenta desventajas para el trabajo con IA:

  • Sin tipos: todo se almacena como texto, por lo que los tipos de datos se vuelven a inferir al cargarlo
  • Archivos grandes y sin compresión de forma predeterminada
  • Lectura lenta con conjuntos de datos grandes

Para datos grandes o que se cargan repetidamente, Parquet es mejor.

Almacenamiento en Parquet con df.to_parquet

Parquet es un formato binario columnar. Conserva los tipos de datos, se comprime bien y se carga mucho más rápido que CSV.

Necesita tener instalado un motor como pyarrow.

df.to_parquet("data.parquet", index=False)

df2 = pd.read_parquet("data.parquet")
print(df2.dtypes)   # types preserved, no re-guessing

CSV frente a Parquet — cuándo utilizar cada uno

Reglas generales:

  • CSV: datos pequeños, uso compartido con herramientas que no son de Python e inspección rápida
  • Parquet: datos grandes, cargas repetidas, conservación de tipos y procesos de análisis

Para tareas de recopilación que alimentan modelos, prefiera Parquet.

Incorporación de nuevos lotes con pd.concat

La recopilación suele realizarse por lotes. Combine un DataFrame existente con otro nuevo mediante pd.concat.

ignore_index=True vuelve a numerar el índice para mantenerlo limpio.

new_batch = pd.DataFrame(new_records)
df = pd.concat([df, new_batch], ignore_index=True)
print(len(df))

Incorporación directa a un archivo CSV

Para incorporar datos a un CSV existente sin cargarlo, ábralo en modo de incorporación y omita la cabecera en las escrituras posteriores.

import os

header = not os.path.exists("data.csv")
new_batch.to_csv("data.csv", mode="a", header=header, index=False)

Por qué deduplicar

Volver a ejecutar la recopilación, las páginas superpuestas o los reintentos pueden crear filas duplicadas. Los duplicados aumentan los recuentos y pueden filtrarse entre las divisiones de entrenamiento y prueba, lo que perjudica la evaluación del modelo.

Deduplicate siempre después de combinar los lotes.

drop_duplicates(subset=[id])

Utilice una clave única estable (a menudo id) con drop_duplicates(subset=...). Esto elimina las repeticiones aunque otros campos hayan cambiado ligeramente.

keep="last" conserva la versión más reciente de cada id.

df = df.drop_duplicates(subset=["id"], keep="last").reset_index(drop=True)
print(len(df), "unique rows")

Auxiliar para guardar y combinar

Combine las piezas: cargue el archivo Parquet existente si está disponible, concatene el lote nuevo, elimine los duplicados por id y vuelva a guardar. Puede ejecutarlo varias veces de forma segura.

import os
import pandas as pd

def save_merge(new_df, path="data.parquet", key="id"):
    if os.path.exists(path):
        old = pd.read_parquet(path)
        new_df = pd.concat([old, new_df], ignore_index=True)
    new_df = new_df.drop_duplicates(subset=[key], keep="last")
    new_df.to_parquet(path, index=False)
    return new_df

Comprobación rápida: elección del formato

Carga repetidamente un conjunto de datos grande para entrenar un modelo y necesita conservar los dtypes con lecturas rápidas.

Resumen: almacenamiento eficiente de datos

Ahora puede conservar correctamente los datos recopilados:

  • pd.DataFrame para convertir registros JSON en una tabla
  • to_csv(index=False) para texto portátil y to_parquet para almacenamiento tipado rápido
  • pd.concat(ignore_index=True) o el modo de adición de CSV para los lotes
  • drop_duplicates(subset=["id"]) para mantener las filas únicas

A continuación: trabajar con APIs públicas reales.

Preguntas frecuentes

¿La lección «Almacenamiento eficiente de datos recopilados» es gratis?

Sí — el texto completo de «Almacenamiento eficiente de datos recopilados» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Learn AI with Python, actualiza a CoddyKit PRO. El curso de Learn AI with Python incluye 4 lecciones en total.

¿Qué aprenderé en «Almacenamiento eficiente de datos recopilados»?

Guardado en CSV/JSON/Parquet, anexado seguro, eliminación de duplicados y recopilación incremental. Practicas Learn AI with Python con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Learn AI with Python?

No se requiere experiencia previa. Learn AI with Python en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 3 de 4.

¿Cuánto tiempo toma la lección «Almacenamiento eficiente de datos recopilados»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Learn AI with Python?

Sí. Cada lección de Learn AI with Python incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Fundamentos de las API REST para recopilar datos
  2. Paginación y recopilación de grandes conjuntos de datos
  3. Almacenamiento eficiente de datos recopilados
  4. Uso de API de datos públicos
← Volver a Learn AI with Python