The kl <- kmeans(as(img, "data.frame")[1:3], 5) worked perfectly.
Thank you very much for the time spent to help me. Laura 2008/6/12 Edzer Pebesma <[EMAIL PROTECTED]>: > Roger Bivand wrote: > >> On Thu, 12 Jun 2008, Laura Poggio wrote: >> >> Dear list, >>> I am trying to do some clustering on images. And I have two main >>> problems: >>> >>> 1) Clustering multiband images. >>> I managed to be successful with a single band image, but when trying to >>> apply to a 3 band I get the following warning message: >>> In as.matrix.SpatialGridDataFrame(x) : >>> as.matrix.SpatialPixelsDataFrame uses first column; >>> pass subset or [] for other columns >>> >>> >>> 2) saving clustering results as grid or image. >>> I get a vector of clusters, but without both coordinates. How it is >>> possible >>> to transform it in a grid? >>> >>> Here the code I use to read the image itself and to do the clustering: >>> >>> library(rgdal) >>> fld <- system.file("E:/data/IMG/fr/", package="rgdal") >>> img <- readGDAL("123_rawR.tif") >>> >>> kl <- kmeans(img, 5) >>> >> >> img is a SpatialGridDataFrame. kmeans() wants a matrix or data frame, so >> say: >> >> kl <- kmeans(as(img, "data.frame"), 5) >> > this also passes the coordinates to the clustering routine; I'm not sure > but I think that was not the initial idea. > In case img is a 3-band image, use > > kl <- kmeans(as(img, "data.frame")[1:3], 5) > -- > Edzer > > [[alternative HTML version deleted]] _______________________________________________ R-sig-Geo mailing list R-sig-Geo@stat.math.ethz.ch https://stat.ethz.ch/mailman/listinfo/r-sig-geo