我一直在研究以netcdf为文件格式的雷达数据文件,文件的结构是年内目录为月目录,日内目录为日目录,日内目录为扫描时间增量不一致的文件。我想得到每小时平均反射率,正在使用glob扫描目录,列出文件,并用水平反射率的第二次提升体积扫描对其进行过滤。 下面是我正在编写的代码:
import datetime as dt
import glob
import netCDF4 as nc
import numpy as np
startdate = dt.datetime(2015, 01, 01, 00, 00, 00)
enddate = dt.datetime(2015, 01, 02, 00, 00, 00)
interval = dt.timedelta(hours=1)
ctr = 0
sub_hour_ave = np.zeros((360,240))
while startdate != enddate:
for i in range(24):
denominator = 0
hourly_files = glob.glob('C:\\Users\\User\\Documents\\sample\\Subic\\'+str(startdate.year)+'\\'+\
str(startdate.month).zfill(2)+'\\'+str(startdate.day).zfill(2)+'\\SUB-'+str(startdate.year)+''\
+str(startdate.month).zfill(2)+''+str(startdate.day).zfill(2)+ "-" + str(i).zfill(2) + '*-02-ZH.nc')
for files in hourly_files:
sub_nc = nc.Dataset(files)
sub_data = np.array(sub_nc.variables['Filtered_Intensity(Horizontal)'])
sub_data[sub_data = -99900] = np.isnan()
sub_data += sub_data
denominator += 1
sub_hour_ave = sub_data/denominator
startdate += interval
目前没有回答
相关问题 更多 >
编程相关推荐