Waarom NC naar HDF5 converteren?
Sommige wetenschappelijke pipelines en tools accepteren HDF5, maar missen een specifieke netCDF-driver. Converteren levert een gewoon HDF5-bestand op dat elke HDF5-compatibele lezer zoals h5py of HDFView kan openen zonder de netCDF-bibliotheek nodig te hebben.
Hoe NC naar HDF5 te converteren
nccopy FREE
Voer nccopy -k netCDF-4 input.nc output.nc uit om een klassiek netCDF-bestand te converteren naar netCDF-4/HDF5-formaat; hernoem de uitvoer naar .hdf5 als uw software die extensie vereist.
Python (netCDF4 + h5py) OPEN-SOURCE
Installeer met pip install netCDF4 h5py, lees het .nc-bestand met netCDF4.Dataset() en schrijf vervolgens elke variabele naar een HDF5-bestand met h5py.File() en create_dataset().
Over deze formaten
Een .nc-bestand is een netCDF (Network Common Data Form) bestand - een binair formaat voor multidimensionale wetenschappelijke gegevens zoals klimaat-, weer- en oceaandatasets van NOAA,…
Open .NC details →Een .HDF5-bestand is gekoppeld aan HDF5, een misc-bestand.
Open .HDF5 details →Kwaliteit & waar op te letten
- netCDF-4 is direct gebouwd op HDF5 - als
ncdump -k yourfile.ncde meldingnetCDF-4geeft, kunt u het bestand hernoemen naar.hdf5en het openen met h5py of HDFView zonder enige conversie. - Klassieke netCDF-bestanden beginnen met de bytes
CDF(hex43 44 46) en zijn geen HDF5 - deze vereisennccopyof een Python-script om te converteren. - Het omgekeerde is niet waar: gewone HDF5-bestanden zijn geen geldige netCDF-bestanden, dus het hernoemen van
.hdf5naar.nczal niet werken zonder de interne lay-out aan te passen aan de netCDF-conventies.
Veelgestelde vragen
Hoe weet ik of mijn NC-bestand al HDF5 is?
ncdump -k yourfile.nc uit; als het netCDF-4 retourneert, is het bestand intern HDF5. U kunt ook controleren of de eerste twee bytes 89 48 zijn (de HDF5-handtekening).Kan h5py het geconverteerde bestand direct lezen?
nccopy is het bestand een geldig HDF5-container; variabelenamen en gegevens blijven intact, hoewel de interne structuur de netCDF-naamgevingsconventies volgt.Blijft metadata behouden tijdens de conversie?
nccopy. Bij direct gebruik van h5py moet u attributen handmatig kopiëren, aangezien h5py netCDF-metadata niet automatisch overdraagt.