python xarray open_dataset 无法读取第二个、第三个或更多 nc 文件
python xarray open_dataset unable to read the second, third, or more nc file
我试图通过 xarray 读取不同的 NetCDF 文件,但它只读取了第一个文件。而第二个、第三个和更多的 NetCDF 文件被作为第一个文件读取而没有任何错误。有人知道如何解决这个问题吗?
### read files
## VI
VI_terra = xr.open_dataset(data_vi+"MOD13A1.006_500m_aid0001.nc")
VI_aqua = xr.open_dataset(data_vi+"MYD13A1.006_500m_aid0001.nc")
## LAI
LAI = xr.open_dataset(data_lai+"MCD15A2H.006_500m_aid0001.nc")
## ET
ET_terra = xr.open_dataset(data_et+"MOD16A2GF.006_500m_aid0001.nc")
ET_aqua = xr.open_dataset(data_et+"MYD16A2GF.006_500m_aid0001.nc")
## Surface temperature
Tsurf_terra = xr.open_dataset(data_tsurf+"MOD11A2.006_1km_aid0001.nc")
Tsurf_aqua = xr.open_dataset(data_tsurf+"MYD11A2.006_1km_aid0001.nc")
但 LAI 被误读为 VI_terra:
而当我使用ncdump检查LAI时,文件本身没有问题(与VI不同):
使用 xr.open_dataset
,.nc 文件在读取后保持打开状态。
最简单的解决方案是使用 xr.load_dataset
,它会在读取后自动关闭 .nc 文件。
如果您需要坚持使用 xr.open_dataset
,那么您可以将其放在 with
语句中,或者在完成后调用 .close()
。
我试图通过 xarray 读取不同的 NetCDF 文件,但它只读取了第一个文件。而第二个、第三个和更多的 NetCDF 文件被作为第一个文件读取而没有任何错误。有人知道如何解决这个问题吗?
### read files
## VI
VI_terra = xr.open_dataset(data_vi+"MOD13A1.006_500m_aid0001.nc")
VI_aqua = xr.open_dataset(data_vi+"MYD13A1.006_500m_aid0001.nc")
## LAI
LAI = xr.open_dataset(data_lai+"MCD15A2H.006_500m_aid0001.nc")
## ET
ET_terra = xr.open_dataset(data_et+"MOD16A2GF.006_500m_aid0001.nc")
ET_aqua = xr.open_dataset(data_et+"MYD16A2GF.006_500m_aid0001.nc")
## Surface temperature
Tsurf_terra = xr.open_dataset(data_tsurf+"MOD11A2.006_1km_aid0001.nc")
Tsurf_aqua = xr.open_dataset(data_tsurf+"MYD11A2.006_1km_aid0001.nc")
但 LAI 被误读为 VI_terra:
而当我使用ncdump检查LAI时,文件本身没有问题(与VI不同):
使用 xr.open_dataset
,.nc 文件在读取后保持打开状态。
最简单的解决方案是使用 xr.load_dataset
,它会在读取后自动关闭 .nc 文件。
如果您需要坚持使用 xr.open_dataset
,那么您可以将其放在 with
语句中,或者在完成后调用 .close()
。