Intercoonecta / proy3-acustica

Importación en R de archivos netCDF generados por Echopype para su uso con paquete echogram
0 stars 0 forks source link

Problemas leyendo los archivos RAW #1

Closed cornejotux closed 1 year ago

cornejotux commented 1 year ago

@emiliom, logramos seguir las instrucciones y pudimor leer en forma automatica los archivos Raw que compartió @HermosillaD, sin embargo, al leer cada archivo nos arroja algunos errores. A @alarconrubencl le indicaba problemas relacionados con la calibracion, pero a mi me da este mensaje.

Failed to process raw file ebes202210-D20221011-T012021.raw: 'channel'

Te adjunto el Jupyter notebook para que pedas ver que es lo que hicimos. Lamentablemente no supe como usar este proyecto en el notebook.

Muchas Gracias

echoPype (1).ipynb.zip

emiliom commented 1 year ago

Ok. Le daré un vistazo hoy.

Asumo que el archivo ebes202210-D20221011-T012021.raw está en la carpeta shared/proyecto4?

cornejotux commented 1 year ago

Si, esta en proyecto3, de todas formas el path esta correcto en el archivo zip que subi.

emiliom commented 1 year ago

Bueno, tenían varios problemas. En el fondo, se tomaron demasiado literalmente el uso del código del ejemplo que les envié :smile: . Creo que el problema principal es que no cambiaron el argumento sonar_model a "EK80".

Aquí está el código mínimo para convertir un archivo:

rawdirpath = Path("/home/jovyan/shared/proyecto3")

ed = ep.open_raw(
    rawdirpath / "ebes202210-D20221011-T012021.raw",
    sonar_model='EK80'
)

Esa conversión corrió sin ningún problema. Y asumiendo que todos los archivos raw fueron generados con la misma ecosonda, asumo que no tendrán problemas con los demás archivos raw.

Y luego, para guardar el archivo convertido a netcdf, algo así:

ed.to_netcdf(save_path=converted_dpath, overwrite=True)

Si me dicen exactamente que quieren hacer, talvez pueda escribirle el código el miércoles después de la sesión de tutoriales.

Actualización: no había tratado de guardar el archivo a netcdf. Al tratarlo, tuve un error. Pero guardándolo a zarr (ed.to_zarr) sí funcionó. No sé que pasa, pero últimamente hemos puesto más énfasis en zarr. Pueden usarlo igual que netcdf. No sé si esto es un bug real o alguna particularidad. Si no tienen necesidad de guardar los datos convertidos, pueden ir directamente a ds_Sv = ep.calibrate.compute_Sv(ed) y guardar Sv a netcdf, quizás antes añadiéndole los datos de lat - lon con:

Sv = ep.consolidate.add_location(Sv, echodata=ed)
emiliom commented 1 year ago

@cornejotux entonces lograron hacer todo lo que querían con echopype?