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
Arriba, tomo cualquier categoría que tiene 4 y en la nueva columna la pongo como 0.
En este punto, quiero que la columna también se nombre ratings
para bc
, donde tomará 0 si está dentro del búfer y 1 si está afuera. El problema es que el bc
es SpatialPolygons
y no contiene la tabla de atributos.
Obviamente, para agregar una columna a un SpatialPolygon
objeto, debe convertirlo en a SpatialPolygonsDataFrame
, pero no sé cómo.
Intenté esto:
buf_df<-as.data.frame(bc)
s_po<-SpatialPolygonsDataFrame(bc,buf_df)
s_po$ratings=0
pero aparece este error:
row.names of data and Polygons IDs do not match