Importation de fichier netCDF pour les Pandas dataframe
Joyeux Noël. Je suis encore très nouveau pour Python et les Pandas alors de l'aide est appréciée.
Je suis en train de lire dans un fichier netCDF, je peux le faire et ensuite l'importer dans une Pandas Dataframe. Le fichier netcDF est en 2D donc, je veux juste pour "décharger". J'ai essayé le DataFrame méthode, mais il ne reconnaît pas l'objet. Sans doute j'ai besoin de convertir les netCDF objet 2D tableau numpy? Encore une fois merci pour toutes les idées sur la meilleure façon de le faire.
Meilleurs voeux
Jason
OriginalL'auteur user1911866 | 2012-12-26
Vous devez vous connecter pour publier un commentaire.
La xarray bibliothèque gère arbitraire dimensions netCDF de données, et conserve les métadonnées. Xarray fournit une méthode simple d'ouvrir les fichiers netCDF, et de les convertir aux pandas dataframes:
Cela va créer un dataframe avec un multi-indice de toutes les dimensions. Malheureusement, les Pandas ne prend pas en charge arbitraire de métadonnées, de sorte que sera perdu dans la conversion, mais vous pouvez garder les
ds
autour, et utiliser les métadonnées.Merci @DaveX, mis à jour.
OriginalL'auteur naught101
Si votre fichier NetCDF (ou
OPeNDAP
dataset) suit CF Métadonnées conventions que vous pouvez en tirer profit par l'aide de laNetCDF4-paquet Python
, ce qui rend leur accès dans les Pandas vraiment facile. (Je suis en utilisant le Enthought Python de Distribution qui comprend à la fois des Pandas et des NetCDF4-Python).Dans l'exemple ci-dessous, le fichier NetCDF est servi via OPeNDAP, et la NetCDF4-bibliothèque Python permet d'ouvrir et de travailler avec une distance OPeNDAP dataset comme si c'était un local de fichier NetCDF, ce qui est assez lisse. Si vous voulez voir les attributs de la NetCDF4 fichier, pointez votre navigateur sur ce lien http://geoport-dev.whoi.edu/thredds/dodsC/HUDSON_SVALLEY/5951adc-a1h.nc.html
Vous devriez être en mesure de l'exécuter sans modification:
Le résultat peut être vu ici dans le Ipython Notebook:
http://nbviewer.ipython.org/4615153/
OriginalL'auteur Rich Signell
Vous pouvez utiliser une bibliothèque comme PyNIO pour lire votre fichier dans p.e. les tableaux numpy et les nourrir pour les pandas.
PyNIO permet de lire plusieurs formats de fichiers, y compris classique netCDF3 et netCDF4.
netcdf4-python pouvez également lire ces formats netCDF et est py3.3 compatible
OriginalL'auteur joaquin