On Sun, 11 Jul 2010, Robin Jeffries wrote:

I know this is a simple question, but I have yet to master the apply
statements. Any help would be appreciated.

You don't want to use apply() here: rbinom is vectorized. However, you cannot use mat$x on a matrix, and the cbind() gave you a matrix anyway. So something like

mat <- data.frame(p=runif(10,0,1), n=rep(1:5))
mat$x <- with(mat, rbinom(10, n, p))

is the idiomatic way to do it.

As an example of using apply and a matrix:

mat <- cbind(p=runif(10,0,1), n=rep(1:5))
x <- apply(mat, 1, function(z) rbinom(1, z['n'], z['p']))
mat <- cbind(mat, x=x)

I have a column of probabilities and sample sizes, I would like to create a
column of binomial random variables using those corresponding probabilities.

Eg.

mat = as.matrix(cbind(p=runif(10,0,1), n=rep(1:5)))



             p n

[1,] 0.5093493 1

[2,] 0.4947375 2

[3,] 0.6753015 3

[4,] 0.8595729 4

[5,] 0.1004739 5

[6,] 0.6292883 1

[7,] 0.3752004 2

[8,] 0.6889157 3

[9,] 0.2435880 4

[10,] 0.9619128 5





I want to create mat$x as binomial(n, p)



Thanks,

Robin


        [[alternative HTML version deleted]]

Please so as we ask, and don't send HTML but rather properly formatted plain text (without all these blank lines).


______________________________________________
R-help@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.


--
Brian D. Ripley,                  rip...@stats.ox.ac.uk
Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595

______________________________________________
R-help@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.

Reply via email to