[R] rbinom for a matrix
Ben Bolker
bolker at ufl.edu
Thu Jul 10 15:58:15 CEST 2008
ACroske <Audy3272 <at> yahoo.com> writes:
>
>
> Ben:
> Thanks for the reply. One further question, and this is where my novice
> status at R shows through. The code makes sense, but what would I put it for
> "m"? Is it the same number for all three (that was my first thought since it
> was the same placeholder for all three). Number of rows in the matrix is 56.
> There are 2576 total cells (observations). Each cell has its own
> probability.
> Thanks for your help!
>
> >
> > matrix(rbinom(length(m),prob=m,size=1),nrow=nrow(m))
> >
> > or (perhaps marginally more efficiently?)
> >
> > y <- (runif(m)<m)
> > storage.mode(y) <- "double"
> >
m is your matrix of probabilities; for
example, you might do
m = as.matrix(read.table("mystuff.txt"))
(or import it from ArcGIS, or whatever).
length(m) will be computed automatically (=2576),
as will nrow(m) (=56).
Erik Iverson's solution should work too, but
I think mine will be much more efficient -- picking
a whole slug of random numbers at once is much
faster than looping and picking them one at a time.
Ben Bolker
More information about the R-help
mailing list