[R] Generating a new matrix using rbinom and a matrix ofprobabilities.

Bill.Venables at csiro.au Bill.Venables at csiro.au
Tue Mar 11 21:50:54 CET 2008


probMatrix <- matrix(runif(5*5), 5, 5)  ## sets up the probs
binoMatrix <- rbinom(length(probMatrix), 1, probMatrix)  ## simulates

dim(binoMatrix) <- dim(probMatrix)  ## makes it a matrix also 

What doesn't work?

-----Original Message-----
From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-project.org]
On Behalf Of Economics Guy
Sent: Wednesday, 12 March 2008 1:16 AM
To: r-help at stat.math.ethz.ch
Subject: [R] Generating a new matrix using rbinom and a matrix
ofprobabilities.

I am having a little trouble getting R to do something without writing
a couple of very awkward loops.

I have a matrix of probabilities and I want to generate a new matrix
of ones and zeros where each element in the new matrix is the result
of a draw from a binomial distribution where the probability of
getting a 1 is the corresponding element in the matrix of
probabilities.

Example Code:
--------------------------------------------

## First I generate the matrix of probabilities for example purposes.

probMatrix <- matrix(NA,5,5){

for (i in 1:5)

probVectorI <- runif(5,0,1)

probMatrix[i,] <- probVectorI

}

# Now I want to take each element in probMatrix and use it as the
probability parameter in rbinom draw and generate a new matrix.
Something like this:

binomialMatrix <- rbinom(1,1,probMatrix)

# But that does not work. I know I can run a loop across each vector
of the matrix, but this seems like an bad way to do this.

---------------------------End Code--------------------------------

So any help would be appreciated.

Thanks,

EG

______________________________________________
R-help at r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide
http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.



More information about the R-help mailing list