【发布时间】:2019-09-28 01:05:00
【问题描述】:
我有几个 netcdf 文件,想删除具有特定特征的数据并保存到新的 netcdf 文件。
该文件具有纬度、经度和时间坐标,具有可变的温度和风。这个想法是,如果风变量小于 6 m / s,则风和温度变量的所有信息(对于这个纬度、经度和时间)都将被删除。我如何在 python 中做到这一点?
目前为止
编辑:一个文件.nc
from netCDF4 import Dataset
from datetime import *
import os
#-----------------------------------------------------------------------------------------------------------------------------------
path = '/home/Downloads/Arquivos_GOES_2018_OSISAF_NC/'
data_ini = datetime(2018,1,1,1,0,0)
data_end = datetime(2018,7,1,1,0,0)
IDval = 6 # minimo quality_level aceito
#-----------------------------------------------------------------------------------------------------------------------------------
DateTimeNow = data_ini
while DateTimeNow<=data_end:
namefile_net = DateTimeNow.strftime('%Y%m%d%H%M')+'00-OSISAF-L3C_GHRSST-SSTsubskin-GOES16-ssteqc_goes16_'+DateTimeNow.strftime('%Y%m%d_%H%M')+'00-v02.0-fv01.0.nc'
if os.path.isfile(path+namefile_net) == True:
data_net = Dataset(path+namefile_net)
tsm = data_net.variables['sea_surface_temperature'][0,:]-273.15
lat = data_net.variables['lat'][:]
lon = data_net.variables['lon'][:]
wind = data_net.variables['wind_speed'][0,:]
wind = np.where(qlv.mask==True,-1.0, qlv)
lon, lat = np.meshgrid(lon, lat) # criar uma matriz com lat e lon
tsm_area = tsm[yid,xid]
lon_area = lon[yid,xid]
lat_area = lat[yid,xid]
wind_area = wind[yid,xid]
if np.sum(wind>=IDval) > 0:
lon_area = np.where(qlv_area<IDval,-999.9,lon_area)
lat_area = np.where(qlv_area<IDval,-999.9,lat_area)
yid2, xid2 = seach_point(lon_area, lat_area, lon_point, lat_point)
```
【问题讨论】: