[R] Random Relabelling
John Kane
jrkrideau at yahoo.ca
Sat Apr 23 12:42:43 CEST 2011
I KNEW there was a better way!
--- On Wed, 4/20/11, Jeremy Hetzel <jthetzel at gmail.com> wrote:
> From: Jeremy Hetzel <jthetzel at gmail.com>
> Subject: Re: [R] Random Relabelling
> To: r-help-archive at googlegroups.com
> Cc: r-help at r-project.org, "Kevin Matthews" <kevin-matthews at uiowa.edu>
> Received: Wednesday, April 20, 2011, 2:25 PM
> Kevin,
>
> The following follows John's suggestion, but without the
> loop. It's quick
> for me.
>
> Jeremy
>
>
> Jeremy T. Hetzel
> Boston University
>
>
>
> ## Generate sample data
> n <- 4000
> rep <- 1000
> rate <- rnorm(n, mean = 15, sd = 2) / 100000 # Mortality
> rates around
> 15/100k
>
> ## Create an empty matrix with appropriate dimensions
> permutations <- matrix(ncol = n, nrow = rep)
>
> ## Use apply() to resample
> permutations <- apply(permutations, 1, function(x)
> {
> sample(rate, size = n, replace = F)
> })
>
> ## Look at the matrix
> dim(permutations)
> head(permutations)
>
> ## Find the column means
> means <- apply(permutations, 1, mean)
> means
>
>
>
>
>
> On Wednesday, April 20, 2011 1:56:35 PM UTC-4, John Kane
> wrote:
> >
> > There is probably a better way to do this but a for
> loop like this should
> > work. You would just need to change the numbers to
> yours and then add on the
> > locations
> >
> =========================================================
> >
> > scores <- 1:5
> > mydata <- matrix(data=NA, nrow=5, ncol=10)
> >
> > for(i in 1:10) {
> > mydata[,i] <- sample(scores, 5, replace=FALSE)
> > }
> >
> >
> =========================================================
> > --- On Wed, 4/20/11, Kevin Matthews <kevin-m... at uiowa.edu>
> wrote:
> >
> > From: Kevin Matthews <kevin-m... at uiowa.edu>
> > Subject: Re: [R] Random Relabelling
> > To: "John Kane" <jrkr... at yahoo.ca>
> > Cc: r-h... at r-project.org
> > Received: Wednesday, April 20, 2011, 1:22 PM
> >
> > I have a map of Iowa of with 4000 locations. At
> each location, I have a
> > cancer mortality rate. I need to test my null
> hypothesis; that the spatial
> > distribution of the mortality rates is
> random. For this test, I need to
> > establish a spatial reference distribution.
> >
> >
> > My reference distribution will be created by some
> random relabelling
> > algorithm. The 4000 locations would remain
> fixed, but the observed
> > mortality rates would be randomly redistributed.
> Then, I want 1000
> > permutations of the same algorithm. For each of
> those 1000 times, I would
> > record the redistributed mortality rate at each
> location. Then, I would
> > calculate the mean of the 1000 points. The
> result would be a spatial
> > reference distribution with a mean value of the random
> permutations at each
> > of the 4000 locations.
> >
> > Thanks for the response,Kevin
> >
> > On Wed, Apr 20, 2011 at 11:08 AM, John Kane <jrkr... at yahoo.ca>
> wrote:
> >
> >
> > Can you explain this a bit more. At the moment I don't
> see what you are
> > trying to achieve. "calculate the
> mean of the 1000 values at each of the
> > 4000 points" does not seem to make sense.
> >
> > --- On Wed, 4/20/11, kmatthews <kevin-m... at uiowa.edu>
> wrote:
> >
> > > From: kmatthews <kevin-m... at uiowa.edu>
> >
> > > Subject: [R] Random Relabelling
> >
> > > To: r-h... at r-project.org
> >
> > > Received: Wednesday, April 20, 2011, 10:04 AM
> >
> > > I have 4000 observations that I need
> >
> > > to randomly relabel 1000 times and then
> >
> > > calculate the mean of the 1000 values at each of
> the 4000
> >
> > > points. Any ideas
> >
> > > for where to begin?
> >
> > >
> >
> > > Thanks
> >
> > > Kevin
> >
> > >
> >
> >
> > [[alternative HTML version deleted]]
> >
> > ______________________________________________
> > R-h... 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.
> >
> >
> -----Inline Attachment Follows-----
>
> ______________________________________________
> 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