Behandeln Sie Daten im NetCDF-Format mit Python

Umgebung

Ubuntu18.04LTS Python3

Umgebung

Das NetCDF4-Modul ist erforderlich, um Dateien im NetCDF-Format in Python3 zu verwenden. Dieses Modul war mit pip3 einfach zu installieren.

NetCDF-Datei-E / A in Python

Das folgende Programm öffnet eine NetCDF-Datei, in der die dreidimensionalen Variablen T2 für Breite, Länge und Zeit gespeichert sind, und erstellt eine neue Datei mit dem Namen test_ncout.nc.

#coding: utf-8
# This is a sample program to read and write s netCDF file with Python3
from netCDF4 import Dataset
import numpy as np

#*~*~*~*~*~*~*~*~*~*~*~*~*~*~*
#read netCDF file
#*~*~*~*~*~*~*~*~*~*~*~*~*~*~*

#open a netCDF file to read
ifile = "test.nc"
ncin = Dataset(ifile, 'r')

#check
#print(ncin.file_format)

#get variables
#print(ncin.variables.keys())

#get axis data
tin = ncin.variables['time']
latin = ncin.variables['lat']
lonin = ncin.variables['lon']

#get length of axis data
ntime = len(tin)
nlat = len(latin)
nlon = len(lonin)

#check axis
#print(tim[:])
#print(latin[:])
#print(lonin[:])

#read data
vin = ncin.variables['T2']

#check data
#print(vin[:,:,:,:])

#*~*~*~*~*~*~*~*~*~*~*~*~*~*~*
#write netCDF file
#*~*~*~*~*~*~*~*~*~*~*~*~*~*~*

#open a netCDF file to write
ncout = Dataset('test_ncout.nc', 'w', format="NETCDF4")

#check file format
#print(ncout.file_format)

#define axix size
ncout.createDimension('time',ntime)
ncout.createDimension('lat', nlat)
ncout.createDimension('lon', nlon)

#create time axis
time = ncout.createVariable('time', np.dtype('f4').char, ('time'))
time.long_name = 'time'
time.units = 'months since 1850-1-1'
time.axis = 'T'

#create lat axis
lat = ncout.createVariable('lat', np.dtype('f4').char, ('lat'))
lat.long_name = 'latitude'
lat.units ='degrees_north'
lat.axis = 'Y'

#create lon axis
lon = ncout.createVariable('lon', np.dtype('f8').char, ('lon'))
lon.long_name = 'longitude'
lon.units = 'degrees_east'
lon.axis = 'X'

#create variable arry
vout = ncout.createVariable('T2', np.dtype('f4').char, ('time', 'lat', 'lon'))
vout.long_name = '2m temperature'
vout.units = 'K'

#copy axis from original data
time[:] = tin[:]
lon[:] = lonin[:]
lat[:] = latin[:]
vout[:] = vin[:]

ncin.close()
ncout.close()

Referenz

http://unidata.github.io/netcdf4-python/ https://github.com/Unidata/netcdf4-python

Recommended Posts

Behandeln Sie Daten im NetCDF-Format mit Python
Behandeln Sie das GDS II-Format mit Python
Format in Python
Bildformat in Python
Markdown mit Python behandeln
[Einführung in Python] Umgang mit Daten im JSON-Format
Einfaches Formatieren von JSON mit Python
Zeigen Sie UTM-30LX-Daten in Python an
Behandeln Sie Umgebungsvariablen in Python
Schreiben Sie Daten im HDF-Format
Behandeln Sie komplexe Zahlen in Python
Holen Sie sich LeapMotion-Daten in Python.
Exportieren Sie DB-Daten im JSON-Format
Lesen Sie die Protokollpufferdaten mit Python3
Python-Anwendung: Datenverarbeitung # 3: Datenformat
Formatieren Sie Python-Code automatisch mit Vim
Behandeln Sie Posix-Nachrichtenwarteschlangen in Python
Hashing von Daten in R und Python
Umgang mit Japanisch mit Python
Behandeln Sie mehrere Python-Versionen in einem Jupyter
Holen Sie sich mit Python zusätzliche Daten zu LDAP
Dateneingabe / -ausgabe in Python (CSV, JSON)
Ali Buch in Python: Abschnitt 2-4, Datenstruktur
Versuchen Sie, mit Binärdaten in Python zu arbeiten
Holen Sie sich Google Fit API-Daten in Python
Python: Vorverarbeitung beim maschinellen Lernen: Datenerfassung
Holen Sie sich Youtube-Daten in Python mithilfe der Youtube-Daten-API
Zeichnen Sie Daten einfach in Shell und Python
Python: Vorverarbeitung beim maschinellen Lernen: Datenkonvertierung
Laden Sie Dateien in jedem Format mit Python herunter
Quadtree in Python --2
CURL in Python
Metaprogrammierung mit Python
Python 3.3 mit Anaconda
Geokodierung in Python
Python-String-Format
SendKeys in Python
Metaanalyse in Python
Unittest in Python
Datenanalyse Python
Epoche in Python
Zwietracht in Python
Deutsch in Python
DCI in Python
Quicksort in Python
nCr in Python
N-Gramm in Python
Programmieren mit Python
Plink in Python
Konstante in Python
FizzBuzz in Python
SQLite in Python
Schritt AIC in Python
LINE-Bot [0] in Python
CSV in Python
Reverse Assembler mit Python
Reflexion in Python