Я использую функцию dissolve
, чтобы сжать фрейм данных геопанд в меньшую таблицу с меньшим количеством строк. Я читал в Интернете, что один из способов исправить недопустимый многоугольник - создать буфер 0 для его геометрических объектов. Итак, я сделал это. Я исправил некоторые полигоны, но по-прежнему дает ту же ошибку для других полигонов. Может ли кто-нибудь дать несколько советов о том, что еще я могу сделать, чтобы исправить эту ошибку?
burn_grass['geometry'] = burn_grass.geometry.buffer(0)
burn_grass.is_valid.unique()
output:array([ True], dtype=bool)
burn_grass = burn_grass.dissolve(by=['UUID'], as_index=False)
выход:
TopologyException: ввод geom 1 недействителен: самопересечение в точке 130.94262695312494 -19.395507812500028 или рядом с ней в 130.94262695312494 -19.395507812500028 pandas / _libs / src \ reduce.pyx в pandas._libs.lib.SeriesGrouper.get