问题描述
在 xarray 中有一个方法叫做 to_dataframe(),见:
http://xarray.pydata.org/en/stable/pandas.html
使用此方法可以将 DataArray 转换为 Pandas DataFrame。
如何将 xarray DataArray 转换为 geopandas GeoDataFrame,就像上面那样,但网格单元包含多边形?
解决方法
此代码将创建一个带有几何列的 GDF,其中包含与我的 xarray 中的纬度/经度坐标相对应的一系列 POINT 对象。
import geopandas as gpd
import xarray as xr
xds = xr.open_dataset('yourfile.nc')
xarr = x['value_column']
df = xarr.to_dataframe().reset_index()
gdf = gpd.GeoDataFrame(
df.value_column,geometry=gpd.points_from_xy(df.lon,df.lat))