我有两个地理数据框。一个是爱荷华州,另一个是北美未来72小时的预兆雨。我想创建一个雨量预报的地理数据框架,它覆盖爱荷华州。但我有个错误。在
state_rain = gpd.overlay(NA_rain,iowa,how='intersection')
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-39-ba8264ed63c2> in <module>()
3 #ws_usa[['WTRSHD_ID','QPF']].groupby('WTRSHD_ID').max().reset_index()
4 #state_rain = sjoin(usa_r,usa,how='inner',op='intersects')
----> 5 state_rain = gpd.overlay(usa_r,joined_states,how='intersection')
6 ws_state = gpd.overlay(ws,joined_states,how='intersection')
7 #print ws_usa.loc[ws_usa.WTRSHD_ID == 'IA-04']['QPF']
C:\Anaconda2\lib\site-packages\geopandas\tools\overlay.pyc in overlay(df1, df2, how, use_sindex)
95
96 # Collect the interior and exterior rings
---> 97 rings1 = _extract_rings(df1)
98 rings2 = _extract_rings(df2)
99 mls1 = MultiLineString(rings1)
C:\Anaconda2\lib\site-packages\geopandas\tools\overlay.pyc in _extract_rings(df)
50 # geom from layer is not valid attempting fix by buffer 0"
51 geom = geom.buffer(0)
---> 52 rings.append(geom.exterior)
53 rings.extend(geom.interiors)
54
AttributeError: 'MultiPolygon' object has no attribute 'exterior'
我检查了type=='MultiPolygon',但是GeoDataFrame都不包含。在
^{pr2}$如果我做下面的事,十字路口就可以了。在
NA_rain.geometry = NA_rain.geometry.map(lambda x: x.convex_hull)
我的问题有两个:1.为什么没有任何多角形出现在我的纳乌雨地理数据库中,以及2。除了把每一个多边形都变成一个凸壳(这会破坏多边形的详细轮廓),您建议如何处理多多边形问题。在
目前没有回答
相关问题 更多 >
编程相关推荐