Python xarray sel数据集方法返回';楠';

Python xarray sel数据集方法返回';楠';,python,python-xarray,netcdf4,Python,Python Xarray,Netcdf4,我正在使用xarraypython库从.nc4文件中提取数据 守则基本上是: lat = [37.99, 36.18, 38.2 ] lon = [-100.82, 37.55, -85.24] files_name = ['coord_1', 'coord_2', 'coord_3'] var_names = ['srad', 'tmax', 'wndspd', 'prate'] def rawData(var2get_xr, var_name2get): x = var2get_x

我正在使用
xarray
python库从
.nc4
文件中提取数据

守则基本上是:

lat = [37.99, 36.18, 38.2 ]
lon = [-100.82, 37.55, -85.24]
files_name = ['coord_1', 'coord_2', 'coord_3']
var_names = ['srad', 'tmax', 'wndspd', 'prate']

def rawData(var2get_xr, var_name2get):
    x = var2get_xr[var_name2get].sel(longitude=xr.DataArray(lon),
                                          latitude=xr.DataArray(lat),
                                          method='nearest').values
    return x

for n, var_name2get in enumerate(var_names):
    var2get_xr = xr.open_mfdataset(f'files/AgMERRA_*_{var_name2get}.nc4', combine='by_coords', 
                                   decode_times = False, chunks = {"time": 10})
    
    print(var2get_xr)
    if n == 0:
        var_ar = rawData(var2get_xr, var_name2get)
        n_lines = var_ar.shape[0]
        time = var2get_xr.time.values
    else:
        var_ar = np.c_[var_ar, rawData(var2get_xr, var_name2get)]


time = [datetime.date(1980, 1, 1) + datetime.timedelta(days = int(t)) for t in time]

#  saving
for n in range(len(lat)):
    print('arquivo {} de um total de {}'.format(n+1, len(lat)))
    name_file = f'{files_name[n]}.csv'
    file = var_ar[:, n::len(lon)]
    pd.DataFrame(file, index=time, columns=var_names).to_csv(name_file, float_format='%.1f')
结果是三个CSV。只有一个(coord_2)不是一个完整的空数据集

我还尝试了三个接近的坐标。就像这样:

lat = [38.2, 38.92, 38.85]
lon = [-96.6, -97.65, -99.31]
files_name = ['coord_1', 'coord_2', 'coord_3']
对于最后一个示例,只有
coord_1
是一个完整的空数据集

谢谢