Re: [R] random section of samples based on group membership

From: Mike Nielsen <mr.blacksheep_at_gmail.com>
Date: Tue 25 Jul 2006 - 01:52:04 EST

Well, how you do it might be a matter of taste with respect to how you want the results.

You could try using "by" with "sample"

by(x,x[,3],function(y){y[sample(nrow(y),1),]})

This will return a list with one list element for each sample group. You can the combine the list back into a matrix.

That's my naive solution; no doubt there will be half a dozen better ways to go about it.

Also, some of the clustering functions I have seen will sample for you.

On 7/24/06, Wade Wall <wade.wall@gmail.com> wrote:
> Hi all,
>
> I have a matrix of 474 rows (samples) with 565 columns (variables).
> each of the 474 samples belong to one of 120 groups, with the
> groupings as a column in the above matrix. For example, the group
> column would be:
>
> 1
> 1
> 1
> 2
> 2
> 2
> .
> .
> .
> 120
> 120
>
> I want to randomly select one from each group. Not all the groups
> have the same number of samples, some have 4, some 3 etc. Is there a
> function to do this, or would I need to write a looping statement to
> look at each successive group?

>
> I basically want to combine the randomly selected samples from the 120
> groups into a new matrix in order to perform a cluster analysis.
>
> Thanks,
> Wade
>
> ______________________________________________
> 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.
>

-- 
Regards,

Mike Nielsen

______________________________________________
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 Tue Jul 25 02:04:53 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 Tue 25 Jul 2006 - 04:21:50 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.