尝试提取包含区域区域的shapefile图层内的区域信息,以每月按时间序列存储在netcdf中的栅格数据。
到目前为止,我只能提取每个shapefile在所有时间段内的平均值(请参见下文)。但是,实际上,我想要每个区域的每月平均值。
最终目的是将其放在熊猫地理数据框中,然后将其与每个区域的一些属性数据合并。我不太习惯使用netcdfs,因此任何建议都将有所帮助! netcdf中的时间维度为“ yyyy-mm-dd”格式。
#import netcdf data
with rio.open('/MSLA_all_test.nc') as msla_nc:
msla_nc_data = msla_nc.read(1,masked=True)
msla_nc_meta = msla_nc.profile
#import polygons
region_polys = gpd.read_file('/GADM2_coast_regions.shp')
#Extract pixel values for each polygon : zonal stats
region_value=rs.zonal_stats(region_polys, msla_nc_data, nodata=-999, affine=msla_nc_meta['transform'], geojson_out=True, copy_properties=True, stats="mean")
答案 0 :(得分:1)
您可以使用xarray执行时间汇总和重采样。然后应用您的代码。