簡體   English   中英

排列netCDF4文件中的數據

[英]Arrange data in netCDF4 file

我試圖弄清楚如何使用Python模塊進行netCDF4處理。 我想將模擬數據保存到文件中,這樣每次我都有一個特定字段值的網格。 我改編了一個發現示例供我使用:

from netCDF4 import Dataset
import numpy as np

root_grp = Dataset('py_netcdf4.nc', 'w', format='NETCDF4')
root_grp.description = 'Example simulation data'

ndim = 128 # Size of the matrix ndim*ndim
xdimension = 0.75
ydimension = 0.75
# dimensions
root_grp.createDimension('time', None)
root_grp.createDimension('x', ndim)
root_grp.createDimension('y', ndim)

# variables
prec = root_grp.createVariable('time', 'f8', ('time',))
x = root_grp.createVariable('x', 'f4', ('x',))
y = root_grp.createVariable('y', 'f4', ('y',))
field = root_grp.createVariable('field', 'f8', ('time', 'x', 'y',))

# data
x_range =  np.linspace(0, xdimension, ndim)
y_range =  np.linspace(0, ydimension, ndim)
x[:] = x_range
y[:] = y_range
for i in range(5):
    field[i,:,:] = np.random.uniform(size=(len(x_range), len(y_range)))


root_grp.close

我的問題是-現在添加我想每次計算的模式信息的首選方式是什么-例如每次字段的平均值,最大值和最小值?

您可以使用以下方法簡單地將屬性添加到變量中:

field.mean=np.mean(field)

當然,這相當有限,對於更多數據,您可能應該只創建新的變量,例如field_mean, field_max或類似變量。 我認為http://cfconventions.org/https://geo-ide.noaa.gov/wiki/index.php?title=NetCDF_Attribute_Convention_for_Dataset_Discovery中沒有對此進行描述,但是您可能希望瀏覽此處提到的不同NetCDF約定http://www.unidata.ucar.edu/software/netcdf/conventions.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM