From: Marc Schwartz (via MN) <mschwartz_at_mn.rr.com>

Date: Thu 10 Aug 2006 - 00:22:38 EST

R-help@stat.math.ethz.ch 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. Received on Thu Aug 10 00:25:58 2006

Date: Thu 10 Aug 2006 - 00:22:38 EST

On Tue, 2006-08-08 at 14:10 -0400, Liaw, Andy wrote:

> From: Marc Schwartz

*>
**> > On Fri, 2006-08-04 at 12:46 -0400, Daniel Gerlanc wrote:
**> > > Hello all,
**> > >
**> > > Consider the following problem:
**> > >
**> > > There is a matrix of probabilities:
**> > >
**> > > > set.seed(1)
**> > > > probs <- array(abs(rnorm(25, sd = 0.33)), dim = c(5,5),
**> > dimnames =
**> > > > list(1:5, letters[1:5])) probs
**> > > a b c d e
**> > > 1 0.21 0.27 0.50 0.0148 0.303
**> > > 2 0.06 0.16 0.13 0.0053 0.258
**> > > 3 0.28 0.24 0.21 0.3115 0.025
**> > > 4 0.53 0.19 0.73 0.2710 0.656
**> > > 5 0.11 0.10 0.37 0.1960 0.205
**> > >
**> > > I want to sample 3 values from each row.
**> > >
**> > > One way to do this follows:
**> > >
**> > > index <- 1:ncol(probs)
**> > >
**> > > for(i in 1:nrow(probs)){
**> > >
**> > > ## gets the indexes of the values chosen
**> > >
**> > > sample(index, size = 3, replace = TRUE, prob = probs[i, ])
**> > >
**> > > }
**> > >
**> > > Is there a another way to do this?
**> > >
**> > > Thanks!
**> >
**> > > t(apply(probs, 1, function(x) sample(x, 3)))
**> > [,1] [,2] [,3]
**> > 1 0.210 0.5000 0.0148
**> > 2 0.258 0.0053 0.1300
**> > 3 0.025 0.2800 0.3115
**> > 4 0.190 0.5300 0.2710
**> > 5 0.196 0.1000 0.1100
**>
**> Hmm... If I read Daniel's code (which is different from his description)
**> correctly, that doesn't seem to be what he wanted. Perhaps something like
**> this:
**>
**> apply(probs, 1, function(p) sample(1:ncol(probs), 3, replace=TRUE, prob=p))
**>
**> Andy
*

Andy,

I suppose it would be up to Daniel for clarification.

Regards,

Marc

R-help@stat.math.ethz.ch 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. Received on Thu Aug 10 00:25:58 2006

Archive maintained by Robert King, hosted by
the discipline of
statistics at the
University of Newcastle,
Australia.

Archive generated by hypermail 2.1.8, at Fri 11 Aug 2006 - 02:21:09 EST.

*
Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help.
Please read the posting
guide before posting to the list.
*