stratomap.py 文件源码

python
阅读 19 收藏 0 点赞 0 评论 0

项目:stratplotlib 作者: StratoDem 项目源码 文件源码
def _handle_multi(df):
        """
        Helper function for _clean_geometry(). Handles Multipolygons

        Parameters
        ----------
        df: pandas.DataFrame

        Returns
        -------
        """
        assert isinstance(df, pandas.DataFrame)
        geometry_col = 'geometry'

        df_row = df.copy()
        assert isinstance(df_row, pandas.DataFrame)

        row_list = []
        x = df_row[geometry_col].iloc[0]

        if isinstance(x, MultiPolygon):
            for y in x.geoms:
                df_row_temp = df_row
                assert isinstance(df_row_temp, pandas.DataFrame)

                df_row_temp[geometry_col] = y
                row_list.append(df_row_temp)

            df_multi_row = pandas.concat(row_list, ignore_index=True)
            assert isinstance(df_multi_row, pandas.DataFrame)
            df_to_return = df_multi_row
            assert isinstance(df_to_return, pandas.DataFrame)
            assert all(isinstance(geometry, shapely.geometry.Polygon)
                       for geometry in df_to_return[geometry_col].values)
            return df_to_return

        elif isinstance(x, shapely.geometry.polygon.Polygon):
            return df_row

        else:
            return pandas.DataFrame()
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号