从shapefile中提取netCDF4数据?

时间:2017-06-07 15:29:30

标签: python-3.x numpy shapefile geopandas netcdf4

在python 3.6中,我导入了一个包含全局降水值的netCDF4文件。我还导入了一个shapefile,其中包含科罗拉多河流域的形状。我的目标是只能在shapefile中读取/提取降水数据。我查了几个例子,但没有一个真的有帮助。

到目前为止,这是我的代码:

from netCDF4 import Dataset
import numpy as np
import geopandas as gpd

nc = Dataset('filename.nc')
long = nc.variables['lon'][:]
lati = nc.variables['lat'][:]
rainfall = nc.variables['precip'][:]

shapefile=gpd.read_file('filename.shp')

上面的代码没有错误消息。

1 个答案:

答案 0 :(得分:1)

哦,看,房子里的水文学家! ;)

好吧,到目前为止,您还没有对代码做过多少工作,您所做的就是将文件读入内存。

当我尝试执行相同的分析时(仅使用grib文件),我发现了一个非常棒的Python库,名为RasterStats

它支持使用ndarray栅格对象以及大多数GDAL支持的栅格文件类型(也必须是netCDF!),它可以生成你想要的东西。

如需更多信息,请查看非常整洁的manual,如果您遇到某个地方,请告诉我们!