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....@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@stat.math.ethz.ch
https://stat.ethz.ch/mailman/listinfo/r-sig-geo
_______________________________________________
R-sig-Geo mailing list
R-sig-Geo@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@stat.math.ethz.ch
https://stat.ethz.ch/mailman/listinfo/r-sig-geo