coast<-readShapeSpatial("coastline.shp")
landc<-readShapeSpatial("landcover.shp")
ro<-readShapeSpatial("roads.shp")
bc<-gBuffer(ro,width=100)
landc$ratings=1
landc$ratings[landc$LANDUSE_ID==4]=0
Powyżej biorę dowolną kategorię, która ma 4, i w nowej kolumnie wpisuję ją jako 0.
W tym momencie chcę również nazwę kolumny ratingsdla bc, gdzie zajmie 0, jeśli jest w buforze i 1, jeśli jest na zewnątrz. Problem polega na tym, że bcjest SpatialPolygonsi nie zawiera tabeli atrybutów.
Oczywiście, aby dodać kolumnę do SpatialPolygonobiektu, musisz przekonwertować ją na obiekt SpatialPolygonsDataFrame, ale nie wiem jak.
Próbowałem tego:
buf_df<-as.data.frame(bc)
s_po<-SpatialPolygonsDataFrame(bc,buf_df)
s_po$ratings=0
ale pojawia się ten błąd:
row.names of data and Polygons IDs do not match