# Re: [R] bootstrap resampling question

From: Jonathan P Daily <jdaily_at_usgs.gov>
Date: Tue, 01 Mar 2011 13:18:20 -0500

I'm not sure that is equivalent to sampling with replacement, since if the first "draw" is 1, then the probability that the next draw will be one is 4/100 instead of the 1/20 it would be in sampling with replacement. I think the way to do this would be what Greg suggested - something like:

bigsamp <- sample(1:20, 100, T)
idx <- sort(unlist(sapply(1:20, function(x) which(bigsamp == x)[1:5])))[1:20]
samp <- bigsamp[idx]

Jonathan P. Daily
Technician - USGS Leetown Science Center 11649 Leetown Road
Kearneysville WV, 25430
(304) 724-4480
"Is the room still a room when its empty? Does the room,  the thing itself have purpose? Or do we, what's the word... imbue it."
• Jubal Early, Firefly

r-help-bounces_at_r-project.org wrote on 03/01/2011 09:37:31 AM:

> [image removed]
>
> Re: [R] bootstrap resampling question
>
> Giovanni Petris
>
> to:
>
> Bodnar Laszlo EB_HU
>
> 03/01/2011 11:58 AM
>
> Sent by:
>
> r-help-bounces_at_r-project.org
>
> Cc:
>
> "'r-help_at_r-project.org'"
>
> A simple way of sampling with replacement from 1:20, with the additional
> constraint that each number can be selected at most five times is
>
> > sample(rep(1:20, 5), 20)
>
> HTH,
> Giovanni
>
> On Tue, 2011-03-01 at 11:30 +0100, Bodnar Laszlo EB_HU wrote:
> > Hello there,
> >
> > I have a problem concerning bootstrapping in R - especially
> focusing on the resampling part of it. I try to sum it up in a
> simplified way so that I would not confuse anybody.
> >
> > I have a small database consisting of 20 observations (basically
> numbers from 1 to 20, I mean: 1, 2, 3, 4, 5, ... 18, 19, 20).
> >
> > I would like to resample this database many times for the
> bootstrap process with the following two conditions. The resampled
> databases should also have 20 observations and you can select each
> of the previously mentioned 20 numbers with replacement. I guess it
> is obvious so far. Now the more difficult second condition is that
> one number can be selected only maximum 5 times. In order to make
> this clear I try to show you an example. So there can be resampled
> databases like the following ones:
> >
> > (1st database) 1,2,1,2,1,2,1,2,1,2,3,3,3,3,3,4,4,4,4,4
> > (4 different numbers are chosen, each selected 5 times)
> >
> > (2nd database) 1,8,8,6,8,8,8,2,3,4,5,6,6,6,6,7,19,1,1,1
> > (Two numbers - 8 and 6 - selected 5 times, number "1" selected
> four times, the others selected less than 4 times)
> >
> > My very first guess that came to my mind whilst thinking about the
> problem was the sample function where there are settings like
> replace=TRUE and prob=... where you can create a probability vector
> i.e. how much should be the probability of selecting a number. So I
> tried to calculate probabilities first. I thought the problem can
> basically described as a k-combination with repetitions.
> Unfortunately the only thing I could calculate so far is the total
> number of all possible selections which amounts to 137 846 527 049.
> >
> > Anybody knows how to implement my second "tricky" condition into
> one of the R functions? Are 'boot' and 'bootstrap' packages capable
> of managing this? I guess they are, I just couldn't figure it out yet...
> >
> > Thanks very much! Best regards,
> > Laszlo Bodnar
> >
> >
>

> > Ez az e-mail és az összes hozzá tartozó csatolt melléklet titkos
> és/vagy jogilag, szakmailag vagy más módon védett információt
> tartalmazhat. Amennyiben nem Ön a levél címzettje akkor a levél
> tartalmának közlése, reprodukálása, másolása, vagy egyéb más úton
> történő terjesztése, felhasználása szigorúan tilos. Amennyiben
> tévedésből kapta meg ezt az üzenetet kérjük azonnal értesítse az
> üzenet küldőjét. Az Erste Bank Hungary Zrt. (EBH) nem vállal
> felelősséget az információ teljes és pontos - címzett(ek)hez történő
> - eljuttatásáért, valamint semmilyen késésért, kapcsolat
> megszakadásból eredő hibáért, vagy az információ felhasználásából
> vagy annak megbízhatatlanságából eredő kárért.
> >
> > Az üzenetek EBH-n kívüli küldője vagy címzettje tudomásul veszi és
> hozzájárul, hogy az üzenetekhez más banki alkalmazott is hozzáférhet
> az EBH folytonos munkamenetének biztosítása érdekében.
> >
> >
> > This e-mail and any attached files are confidential
and/...{{dropped:19}}
> >
> > ______________________________________________
> > R-help_at_r-project.org mailing list
> > https://stat.ethz.ch/mailman/listinfo/r-help
http://www.R-project.org/posting-guide.html
> > and provide commented, minimal, self-contained, reproducible code.
>
> --
>
> Giovanni Petris <GPetris_at_uark.edu>
> Associate Professor
> Department of Mathematical Sciences
> University of Arkansas - Fayetteville, AR 72701
> Ph: (479) 575-6324, 575-8630 (fax)
> http://definetti.uark.edu/~gpetris/
>
> ______________________________________________
> R-help_at_r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help