how to do randomly sampling in raster layer
Dear Mao, If r is a RasterLayer, you can also do library(dismo) xy <- randomPoints(r, n=100) plot(r) points(xy) Best, Robert
On Tue, Aug 3, 2010 at 2:51 AM, Paul Hiemstra <p.hiemstra at geo.uu.nl> wrote:
On 08/03/2010 11:15 AM, caspar hallmann wrote:
Dear Mao,
You can use function rpoint from spatstat, after converting your
raster object into a pixel image.
consider the following:
library(raster)
library(spatstat)
library(maptools)
library(sp)
# An arbitrary raster
r<- raster(system.file("external/test.grd", package="raster"))
# plot it
image(r)
# convert to SpatialGridDataFrame
r.spgrd<-as(r,"SpatialGridDataFrame")
I would consider converting it to SpatialPointsDF instead. r.spgrd<-as(r,"SpatialPointsDataFrame") Now you can eliminate the NA value: r.spgrd = r.spgrd[!is.na(r.spgrd[[1]]),] In stead of rpoint you can also use sample: selectedPoints = sample(1:length(r.spgrd[[1]]), 1000) r.sampled = r.spgrd[selectedPoints,] cheers, Paul
r.spgrd$constant<-ifelse(is.na(r.spgrd[[1]]),NA,1) # ...this to ensure an equal weight to each non-NA cell # convert to im r.im<-as.im(r.spgrd["constant"]) # sample points according to constant r.points<-rpoint(100,r.im) # plot the random points points(r.points) #..to get the coordinates as.data.frame(r.points) Good Luck! Caspar On Tue, Aug 3, 2010 at 10:43 AM, Mao Jianfeng<jianfeng.mao at gmail.com> ?wrote:
Dear r-sig-geoers, I want to randomly sample n points from regions of a raster layers, the cells denoted as "NA" is not included in this sampling process. And, I want to got the longitude and latitude of the sampled points. I checked the manual of raster package, I found several functions is relative to my purpose. I tried them all, but I failed. Can it can be done by raster functionalities. Could you please refer me to the right direction? I expect to hearing from you. Your helps are very valuable for a Chinese who can not reach helps nearby. Best, Sincerely, Mao Jian-Feng
_______________________________________________ R-sig-Geo mailing list R-sig-Geo at stat.math.ethz.ch https://stat.ethz.ch/mailman/listinfo/r-sig-geo
_______________________________________________ R-sig-Geo mailing list R-sig-Geo at stat.math.ethz.ch https://stat.ethz.ch/mailman/listinfo/r-sig-geo
-- Drs. Paul Hiemstra Department of Physical Geography Faculty of Geosciences University of Utrecht Heidelberglaan 2 P.O. Box 80.115 3508 TC Utrecht Phone: ?+3130 253 5773 http://intamap.geo.uu.nl/~paul http://nl.linkedin.com/pub/paul-hiemstra/20/30b/770
_______________________________________________ R-sig-Geo mailing list R-sig-Geo at stat.math.ethz.ch https://stat.ethz.ch/mailman/listinfo/r-sig-geo