Длина дороги в пределах полигонов в R - PullRequest
0 голосов
/ 11 июля 2019

У меня есть файл формы дорожной сети и другой файл формы, содержащий границы области. Есть ли какой-нибудь лучший код, который я могу использовать для определения длины дорог внутри каждого многоугольника? Этот вопрос задавался ранее с той разницей, что я хочу использовать R вместо QGIS. Я попробовал:

intersec=intersect(roads,Polygon)

road_length=tapply(intersec$length, intersec$polygon, sum)

Это работает, но проблема в том, что пересечение не делит длину дорог, которые пересекают полигоны, а удваивает их в файле intersec и назначает полную длину этих дорог обоим полигонам.

Как я узнал об этой проблеме: сообщения об ошибке нет, но следующее доказательство говорит мне, что что-то не так:

a=sum(roads$length) and b=sum(intersec$length) 

a и b не имеют одинаковую длину -> a меньше, чем b.

...