es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo se escribe un archivo .feather en GCS?

Anteriormente trabajé con archivos .csv, lo que permitía subirlos a GCS de manera sencilla.

Para los archivos .csv, haría lo siguiente, lo cual funciona:

blob = bucket.blob(path)
blob.upload_from_string(dataframe.to_csv(), 'text/csv')

Estoy intentando hacer lo mismo, es decir, escribir el dataframe como un archivo .feather en el bucket:

blob = bucket.blob(path)
blob.upload_from_string(dataframe.reset_index().to_feather(), 'text/feather')

Sin embargo, esto falla y dice que to_feather() requiere un fname. ¿Alguna sugerencia o guía sobre lo que hice mal sería útil?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Parece que el método to_feather() requiere que se pase un nombre de archivo como argumento. En lugar de utilizar directamente el método to_feather(), se podría guardar el archivo feather localmente primero y luego cargarlo en GCS utilizando el método upload_from_filename(). Aquí tienes un ejemplo de código:

    import pandas as pd
    import feather
    
    # Guarda el dataframe como un archivo feather localmente
    dataframe.reset_index().to_feather('ruta/a/archivo/local.feather')
    
    # Carga el archivo feather en GCS utilizando el método upload_from_filename del blob
    blob = bucket.blob('ruta/a/archivo/gcs.feather')
    blob.upload_from_filename('ruta/a/archivo/local.feather')
    

    Esto debería subir el archivo feather a GCS. ¡Hazme saber si tienes más preguntas o preocupaciones!

Comments are closed.