On Wed, May 25, 2011 at 8:06 AM, Nicolas Degallier <[email protected]> wrote: > Hi All, > > I have read different shapefiles that are contiguous and that have different > column names with the function "readShapePoly". > > example : > > noumea <- readShapePoly(noumea.file, IDvar = "NOUMEA2_ID", proj4string = > crs_rgnc) > > and > > dumbea <- readShapePoly(dumbea.file, IDvar = "DUMBEA2_", proj4string = > crs_rgnc) > > Now I would like to create a new shapefile with all the polygones in the > "noumea" and "dumbea" spatial polygone data frames. > > I tried : > spRbind(noumea, dumbea) > > I get this message error : > > Error in spRbind(as(obj, "SpatialPolygons"), as(x, "SpatialPolygons")) : > non-unique polygon IDs > > I have tried with the function rbind() > I have tried to set noumea$NOUMEA2_ID and dumbea$DUMBEA2_ with unique values > but I still get the same message error as if the function spRbind was not > using those two columns as polygons ID... > > Does anyone know how I can fix this problem ?
once you've read in your data using NOUMEA2_ID and DUMBEA2_ as the ID variables, changing the values in the data frame won''t change the ID attached to each feature. You need to use the "spChFIDs-methods" to create new spatial polygons data frames with unique IDs between them. Here, scot1 is the first 10 features from scot_BNG as read in help(rgdal) > scot2=scot1 > scot12=spRbind(scot1,scot2) Error in spRbind(as(obj, "SpatialPolygons"), as(x, "SpatialPolygons")) : non-unique polygon IDs - that fails because the IDs are the same. So we change scot2 to be "A" to "J" (which isnt what the IDs are currently...) > scot2=spChFIDs(scot2,letters[1:10]) > scot12=spRbind(scot1,scot2) and that works. Barry _______________________________________________ R-sig-Geo mailing list [email protected] https://stat.ethz.ch/mailman/listinfo/r-sig-geo
