Are loops handled differently in newer versions of R?

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

Are loops handled differently in newer versions of R?

Michael Rennie-3

Hi gang,

I'm perplexed- I have some code that uses for() loops that works fine in
R version 2.8 on my mac, worked fine in version 2.8 on my old windows
machine, but doesn't work in version 2.10 on windows.

The loop implements a function over a data frame (code is included below).

In Mac (running version 2.8), the results of the loop are what I expect:

 > p_unadj
[1] 0.034939481 0.015743706 0.089287030 0.001098538 0.039290594

But in Windows (running version 2.10.1), I get a bunch of NA's...

 > p_unadj
  A   B      C    D    E
NA NA NA NA NA

If I had to guess, I'd say that R v. 2.10 is handling the i in
lab8.dat[,1] differently, given that it's keeping the row names in the
output for p_unadj... but why would that stop it from applying the
function?

Any thoughts or suggestions are welcome.

Cheers,

Mike

Here's the code...


#build the dataset

locn<-c("A", "B", "C", "D", "E")
n<-c(28, 14, 21, 52, 35)
corr.r<-c(0.40, 0.63, 0.38, 0.44, 0.35)

lab8.dat<-data.frame(locn, n, corr.r)
lab8.dat

attach(lab8.dat)

#write the function

calc.prob.t<-function(n, r)
#given a sample size (n) and correlation coefficient (r), returns the
probability for that test
     {
     df<-n-2
     t<-(r-0)/(sqrt((1-r2)/df))
         probt<-2*(pt(t, df, lower.tail=FALSE))
     probt
     }

#try out the function...
calc.prob.t(lab8.dat$n[1], lab8.dat$corr.r[1])
#it works.

#write a loop to implement that function for every correlation in your
dataset...


p_unadj<-numeric(length(lab8.dat[,1]))
p_unadj<-NULL
p_unadj

#all this just built an empty vector to store the results of our loop...

for ( i in lab8.dat[,1] )
         p_unadj[i]<-calc.prob.t(lab8.dat[i,2], lab8.dat[i,3])

p_unadj

#if executed on my Mac, running R v.2.8, this works (and did using 2.8
on my old windows machine). Running v. 2.10 in Windows, I get NAs.

--
Michael D. Rennie, Ph.D.
Postdoctoral Fellow, Environmental and Life Sciences Program
Trent University
2140 East Bank Drive, DNA Building (2nd Floor)
Peterborough, Ontario K9J 7B8
Vox:705.755.2287 Fax:705.755.1559
www.people.trentu.ca/michaelrennie

______________________________________________
[hidden email] 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 | Threaded
Open this post in threaded view
|

Re: Are loops handled differently in newer versions of R?

Don MacQueen
Try

for ( i in seq(nrow(lab8.dat)) )
         p_unadj[i]<-calc.prob.t(lab8.dat[i,2], lab8.dat[i,3])

The first column of lab8.dat is a factor, and you're trying to use it
as a loop index as if it were an  integer. (Which I would consider
dangerous.)

No, loops are not handled differently, but automatic conversion of
factors to numeric apparently is.

-Don

At 10:53 PM -0400 3/16/10, Michael Rennie wrote:

>Hi gang,
>
>I'm perplexed- I have some code that uses for() loops that works
>fine in R version 2.8 on my mac, worked fine in version 2.8 on my
>old windows machine, but doesn't work in version 2.10 on windows.
>
>The loop implements a function over a data frame (code is included below).
>
>In Mac (running version 2.8), the results of the loop are what I expect:
>
>>  p_unadj
>[1] 0.034939481 0.015743706 0.089287030 0.001098538 0.039290594
>
>But in Windows (running version 2.10.1), I get a bunch of NA's...
>
>>  p_unadj
>  A   B      C    D    E
>NA NA NA NA NA
>
>If I had to guess, I'd say that R v. 2.10 is handling the i in
>lab8.dat[,1] differently, given that it's keeping the row names in
>the output for p_unadj... but why would that stop it from applying
>the function?
>
>Any thoughts or suggestions are welcome.
>
>Cheers,
>
>Mike
>
>Here's the code...
>
>
>#build the dataset
>
>locn<-c("A", "B", "C", "D", "E")
>n<-c(28, 14, 21, 52, 35)
>corr.r<-c(0.40, 0.63, 0.38, 0.44, 0.35)
>
>lab8.dat<-data.frame(locn, n, corr.r)
>lab8.dat
>
>attach(lab8.dat)
>
>#write the function
>
>calc.prob.t<-function(n, r)
>#given a sample size (n) and correlation coefficient (r), returns
>the probability for that test
>     {
>     df<-n-2
>     t<-(r-0)/(sqrt((1-r2)/df))
>         probt<-2*(pt(t, df, lower.tail=FALSE))
>     probt
>     }
>
>#try out the function...
>calc.prob.t(lab8.dat$n[1], lab8.dat$corr.r[1])
>#it works.
>
>#write a loop to implement that function for every correlation in
>your dataset...
>
>
>p_unadj<-numeric(length(lab8.dat[,1]))
>p_unadj<-NULL
>p_unadj
>
>#all this just built an empty vector to store the results of our loop...
>
>for ( i in lab8.dat[,1] )
>         p_unadj[i]<-calc.prob.t(lab8.dat[i,2], lab8.dat[i,3])
>
>p_unadj
>
>#if executed on my Mac, running R v.2.8, this works (and did using
>2.8 on my old windows machine). Running v. 2.10 in Windows, I get
>NAs.
>
>--
>Michael D. Rennie, Ph.D.
>Postdoctoral Fellow, Environmental and Life Sciences Program
>Trent University
>2140 East Bank Drive, DNA Building (2nd Floor)
>Peterborough, Ontario K9J 7B8
>Vox:705.755.2287 Fax:705.755.1559
>www.*people.trentu.ca/michaelrennie
>
>______________________________________________
>[hidden email] 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.


--
---------------------------------
Don MacQueen
Lawrence Livermore National Laboratory
Livermore, CA, USA
925-423-1062
[hidden email]

______________________________________________
[hidden email] 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 | Threaded
Open this post in threaded view
|

Re: Are loops handled differently in newer versions of R?

Michael Bibo-2
In reply to this post by Michael Rennie-3
Michael Rennie <mdrennie <at> gmail.com> writes:

>
>
> Hi gang,
>
> I'm perplexed- I have some code that uses for() loops that works fine in
> R version 2.8 on my mac, worked fine in version 2.8 on my old windows
> machine, but doesn't work in version 2.10 on windows.
>
> The loop implements a function over a data frame (code is included below).
>
> In Mac (running version 2.8), the results of the loop are what I expect:
>
>  > p_unadj
> [1] 0.034939481 0.015743706 0.089287030 0.001098538 0.039290594



Hi Michael,

I'm not sure what the mac is doing, but if you change the syntax of the loop as
follows it gives the same answers:

> for ( i in 1:length(lab8.dat[,1]) )
+          p_unadj[i]<-calc.prob.t(lab8.dat[i,2], lab8.dat[i,3])

> p_unadj
[1] 0.034939481 0.015743706 0.089287030 0.001098538 0.039290594


Hope this helps,

Michael Bibo,
Queensland Health

______________________________________________
[hidden email] 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 | Threaded
Open this post in threaded view
|

Re: Are loops handled differently in newer versions of R?

Joshua Wiley-2
In reply to this post by Michael Rennie-3
Michael,

I have to agree with Don that using a factor as a loop index seems
like a risky choice.  At any rate, part of the problem is that you are
referencing a nonexistant part of your dataframe.  i is an index of
characters, but your rownames are 1:5, not LETTERS[1:5].  If you give
your dataframe rownames, you can then use your loop, see below.

########################
locn<-c("A", "B", "C", "D", "E")
n<-c(28, 14, 21, 52, 35)
corr.r<-c(0.40, 0.63, 0.38, 0.44, 0.35)

lab8.dat<-data.frame(locn, n, corr.r)
lab8.dat

calc.prob.t<-function(n, r)
   {
   df<-n-2
   t<-(r-0)/(sqrt((1-r^2)/df)) # I'm assuming you mean r^2 here not r2
       probt<-2*(pt(t, df, lower.tail=FALSE))
   probt
   }

p_unadj<-NULL # since you assign it to null anyways, there's not real
point in the other assignment
p_unadj

for ( i in lab8.dat[,1] )
       p_unadj[i] <- calc.prob.t(lab8.dat[i,2], lab8.dat[i,3])

p_unadj # all NAs as you noticed

rownames(lab8.dat) <- lab8.dat$locn

for ( i in lab8.dat[,1] )
       p_unadj[i] <- calc.prob.t(lab8.dat[i,2], lab8.dat[i,3])

p_unadj # now lab8.dat["A",2] etc. means something, and it works

##############################




On Tue, Mar 16, 2010 at 7:53 PM, Michael Rennie <[hidden email]> wrote:

>
> Hi gang,
>
> I'm perplexed- I have some code that uses for() loops that works fine in R
> version 2.8 on my mac, worked fine in version 2.8 on my old windows machine,
> but doesn't work in version 2.10 on windows.
>
> The loop implements a function over a data frame (code is included below).
>
> In Mac (running version 2.8), the results of the loop are what I expect:
>
>> p_unadj
> [1] 0.034939481 0.015743706 0.089287030 0.001098538 0.039290594
>
> But in Windows (running version 2.10.1), I get a bunch of NA's...
>
>> p_unadj
>  A   B      C    D    E
> NA NA NA NA NA
>
> If I had to guess, I'd say that R v. 2.10 is handling the i in lab8.dat[,1]
> differently, given that it's keeping the row names in the output for
> p_unadj... but why would that stop it from applying the function?
>
> Any thoughts or suggestions are welcome.
>
> Cheers,
>
> Mike
>
> Here's the code...
>
>
> #build the dataset
>
> locn<-c("A", "B", "C", "D", "E")
> n<-c(28, 14, 21, 52, 35)
> corr.r<-c(0.40, 0.63, 0.38, 0.44, 0.35)
>
> lab8.dat<-data.frame(locn, n, corr.r)
> lab8.dat
>
> attach(lab8.dat)
>
> #write the function
>
> calc.prob.t<-function(n, r)
> #given a sample size (n) and correlation coefficient (r), returns the
> probability for that test
>    {
>    df<-n-2
>    t<-(r-0)/(sqrt((1-r2)/df))
>        probt<-2*(pt(t, df, lower.tail=FALSE))
>    probt
>    }
>
> #try out the function...
> calc.prob.t(lab8.dat$n[1], lab8.dat$corr.r[1])
> #it works.
>
> #write a loop to implement that function for every correlation in your
> dataset...
>
>
> p_unadj<-numeric(length(lab8.dat[,1]))
> p_unadj<-NULL
> p_unadj
>
> #all this just built an empty vector to store the results of our loop...
>
> for ( i in lab8.dat[,1] )
>        p_unadj[i]<-calc.prob.t(lab8.dat[i,2], lab8.dat[i,3])
>
> p_unadj
>
> #if executed on my Mac, running R v.2.8, this works (and did using 2.8 on my
> old windows machine). Running v. 2.10 in Windows, I get NAs.
>
> --
> Michael D. Rennie, Ph.D.
> Postdoctoral Fellow, Environmental and Life Sciences Program
> Trent University
> 2140 East Bank Drive, DNA Building (2nd Floor)
> Peterborough, Ontario K9J 7B8
> Vox:705.755.2287 Fax:705.755.1559
> www.people.trentu.ca/michaelrennie
>
> ______________________________________________
> [hidden email] 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.
>



--
Joshua Wiley
Senior in Psychology
University of California, Riverside
http://www.joshuawiley.com/

______________________________________________
[hidden email] 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 | Threaded
Open this post in threaded view
|

Re: Are loops handled differently in newer versions of R?

Don MacQueen
Joshua's explanation of rownames makes a lot more sense than my
speculation about conversion to numeric. Rownames of dataframes is an
area in which there have definitely been changes in R in the last
year or two, give or take. (I don't recall details or timing)

Therefore, I find it very plausible that in R 2.8.x the rownames of
your dataframe were different than they are now in R 2.10.x, given
how you constructed the dataframe. This then would be the explanation
of why the script worked in 2.8.x and not in 2.10.x.

-Don

At 8:57 PM -0700 3/16/10, Joshua Wiley wrote:

>Michael,
>
>I have to agree with Don that using a factor as a loop index seems
>like a risky choice.  At any rate, part of the problem is that you are
>referencing a nonexistant part of your dataframe.  i is an index of
>characters, but your rownames are 1:5, not LETTERS[1:5].  If you give
>your dataframe rownames, you can then use your loop, see below.
>
>########################
>locn<-c("A", "B", "C", "D", "E")
>n<-c(28, 14, 21, 52, 35)
>corr.r<-c(0.40, 0.63, 0.38, 0.44, 0.35)
>
>lab8.dat<-data.frame(locn, n, corr.r)
>lab8.dat
>
>calc.prob.t<-function(n, r)
>    {
>    df<-n-2
>    t<-(r-0)/(sqrt((1-r^2)/df)) # I'm assuming you mean r^2 here not r2
>        probt<-2*(pt(t, df, lower.tail=FALSE))
>    probt
>    }
>
>p_unadj<-NULL # since you assign it to null anyways, there's not real
>point in the other assignment
>p_unadj
>
>for ( i in lab8.dat[,1] )
>        p_unadj[i] <- calc.prob.t(lab8.dat[i,2], lab8.dat[i,3])
>
>p_unadj # all NAs as you noticed
>
>rownames(lab8.dat) <- lab8.dat$locn
>
>for ( i in lab8.dat[,1] )
>        p_unadj[i] <- calc.prob.t(lab8.dat[i,2], lab8.dat[i,3])
>
>p_unadj # now lab8.dat["A",2] etc. means something, and it works
>
>##############################
>
>
>
>
>On Tue, Mar 16, 2010 at 7:53 PM, Michael Rennie <[hidden email]> wrote:
>>
>>  Hi gang,
>>
>>  I'm perplexed- I have some code that uses for() loops that works fine in R
>>  version 2.8 on my mac, worked fine in version 2.8 on my old windows machine,
>>  but doesn't work in version 2.10 on windows.
>>
>>  The loop implements a function over a data frame (code is included below).
>>
>>  In Mac (running version 2.8), the results of the loop are what I expect:
>>
>>>  p_unadj
>>  [1] 0.034939481 0.015743706 0.089287030 0.001098538 0.039290594
>>
>>  But in Windows (running version 2.10.1), I get a bunch of NA's...
>>
>>>  p_unadj
>>   A   B      C    D    E
>>  NA NA NA NA NA
>>
>>  If I had to guess, I'd say that R v. 2.10 is handling the i in lab8.dat[,1]
>>  differently, given that it's keeping the row names in the output for
>>  p_unadj... but why would that stop it from applying the function?
>>
>>  Any thoughts or suggestions are welcome.
>>
>>  Cheers,
>>
>>  Mike
>>
>>  Here's the code...
>>
>>
>>  #build the dataset
>>
>>  locn<-c("A", "B", "C", "D", "E")
>>  n<-c(28, 14, 21, 52, 35)
>>  corr.r<-c(0.40, 0.63, 0.38, 0.44, 0.35)
>>
>>  lab8.dat<-data.frame(locn, n, corr.r)
>>  lab8.dat
>>
>>  attach(lab8.dat)
>>
>>  #write the function
>>
>>  calc.prob.t<-function(n, r)
>>  #given a sample size (n) and correlation coefficient (r), returns the
>>  probability for that test
>>     {
>>     df<-n-2
>>     t<-(r-0)/(sqrt((1-r2)/df))
>>         probt<-2*(pt(t, df, lower.tail=FALSE))
>>     probt
>>     }
>>
>>  #try out the function...
>>  calc.prob.t(lab8.dat$n[1], lab8.dat$corr.r[1])
>>  #it works.
>>
>>  #write a loop to implement that function for every correlation in your
>>  dataset...
>>
>>
>>  p_unadj<-numeric(length(lab8.dat[,1]))
>>  p_unadj<-NULL
>>  p_unadj
>>
>>  #all this just built an empty vector to store the results of our loop...
>>
>>  for ( i in lab8.dat[,1] )
>>         p_unadj[i]<-calc.prob.t(lab8.dat[i,2], lab8.dat[i,3])
>>
>>  p_unadj
>>
>>  #if executed on my Mac, running R v.2.8, this works (and did using 2.8 on my
>>  old windows machine). Running v. 2.10 in Windows, I get NAs.
>>
>>  --
>>  Michael D. Rennie, Ph.D.
>>  Postdoctoral Fellow, Environmental and Life Sciences Program
>>  Trent University
>  > 2140 East Bank Drive, DNA Building (2nd Floor)
>>  Peterborough, Ontario K9J 7B8
>>  Vox:705.755.2287 Fax:705.755.1559
>>  www.*people.trentu.ca/michaelrennie
>>
>>  ______________________________________________
>>  [hidden email] 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.
>>
>
>
>
>--
>Joshua Wiley
>Senior in Psychology
>University of California, Riverside
>http://*www.*joshuawiley.com/
>
>______________________________________________
>[hidden email] 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.


--
---------------------------------
Don MacQueen
Lawrence Livermore National Laboratory
Livermore, CA, USA
925-423-1062
[hidden email]

______________________________________________
[hidden email] 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 | Threaded
Open this post in threaded view
|

Re: Are loops handled differently in newer versions of R?

Michael Rennie-3

Thanks everyone for your assistance with this! Very much appreciated,
and the students of my statistics course will also be pleased to have a
fix ;)

Mike

Don MacQueen wrote:

> Joshua's explanation of rownames makes a lot more sense than my
> speculation about conversion to numeric. Rownames of dataframes is an
> area in which there have definitely been changes in R in the last year
> or two, give or take. (I don't recall details or timing)
>
> Therefore, I find it very plausible that in R 2.8.x the rownames of
> your dataframe were different than they are now in R 2.10.x, given how
> you constructed the dataframe. This then would be the explanation of
> why the script worked in 2.8.x and not in 2.10.x.
>
> -Don
>
> At 8:57 PM -0700 3/16/10, Joshua Wiley wrote:
>> Michael,
>>
>> I have to agree with Don that using a factor as a loop index seems
>> like a risky choice.  At any rate, part of the problem is that you are
>> referencing a nonexistant part of your dataframe.  i is an index of
>> characters, but your rownames are 1:5, not LETTERS[1:5].  If you give
>> your dataframe rownames, you can then use your loop, see below.
>>
>> ########################
>> locn<-c("A", "B", "C", "D", "E")
>> n<-c(28, 14, 21, 52, 35)
>> corr.r<-c(0.40, 0.63, 0.38, 0.44, 0.35)
>>
>> lab8.dat<-data.frame(locn, n, corr.r)
>> lab8.dat
>>
>> calc.prob.t<-function(n, r)
>>    {
>>    df<-n-2
>>    t<-(r-0)/(sqrt((1-r^2)/df)) # I'm assuming you mean r^2 here not r2
>>        probt<-2*(pt(t, df, lower.tail=FALSE))
>>    probt
>>    }
>>
>> p_unadj<-NULL # since you assign it to null anyways, there's not real
>> point in the other assignment
>> p_unadj
>>
>> for ( i in lab8.dat[,1] )
>>        p_unadj[i] <- calc.prob.t(lab8.dat[i,2], lab8.dat[i,3])
>>
>> p_unadj # all NAs as you noticed
>>
>> rownames(lab8.dat) <- lab8.dat$locn
>>
>> for ( i in lab8.dat[,1] )
>>        p_unadj[i] <- calc.prob.t(lab8.dat[i,2], lab8.dat[i,3])
>>
>> p_unadj # now lab8.dat["A",2] etc. means something, and it works
>>
>> ##############################
>>
>>
>>
>>
>> On Tue, Mar 16, 2010 at 7:53 PM, Michael Rennie <[hidden email]>
>> wrote:
>>>
>>>  Hi gang,
>>>
>>>  I'm perplexed- I have some code that uses for() loops that works
>>> fine in R
>>>  version 2.8 on my mac, worked fine in version 2.8 on my old windows
>>> machine,
>>>  but doesn't work in version 2.10 on windows.
>>>
>>>  The loop implements a function over a data frame (code is included
>>> below).
>>>
>>>  In Mac (running version 2.8), the results of the loop are what I
>>> expect:
>>>
>>>>  p_unadj
>>>  [1] 0.034939481 0.015743706 0.089287030 0.001098538 0.039290594
>>>
>>>  But in Windows (running version 2.10.1), I get a bunch of NA's...
>>>
>>>>  p_unadj
>>>   A   B      C    D    E
>>>  NA NA NA NA NA
>>>
>>>  If I had to guess, I'd say that R v. 2.10 is handling the i in
>>> lab8.dat[,1]
>>>  differently, given that it's keeping the row names in the output for
>>>  p_unadj... but why would that stop it from applying the function?
>>>
>>>  Any thoughts or suggestions are welcome.
>>>
>>>  Cheers,
>>>
>>>  Mike
>>>
>>>  Here's the code...
>>>
>>>
>>>  #build the dataset
>>>
>>>  locn<-c("A", "B", "C", "D", "E")
>>>  n<-c(28, 14, 21, 52, 35)
>>>  corr.r<-c(0.40, 0.63, 0.38, 0.44, 0.35)
>>>
>>>  lab8.dat<-data.frame(locn, n, corr.r)
>>>  lab8.dat
>>>
>>>  attach(lab8.dat)
>>>
>>>  #write the function
>>>
>>>  calc.prob.t<-function(n, r)
>>>  #given a sample size (n) and correlation coefficient (r), returns the
>>>  probability for that test
>>>     {
>>>     df<-n-2
>>>     t<-(r-0)/(sqrt((1-r2)/df))
>>>         probt<-2*(pt(t, df, lower.tail=FALSE))
>>>     probt
>>>     }
>>>
>>>  #try out the function...
>>>  calc.prob.t(lab8.dat$n[1], lab8.dat$corr.r[1])
>>>  #it works.
>>>
>>>  #write a loop to implement that function for every correlation in your
>>>  dataset...
>>>
>>>
>>>  p_unadj<-numeric(length(lab8.dat[,1]))
>>>  p_unadj<-NULL
>>>  p_unadj
>>>
>>>  #all this just built an empty vector to store the results of our
>>> loop...
>>>
>>>  for ( i in lab8.dat[,1] )
>>>         p_unadj[i]<-calc.prob.t(lab8.dat[i,2], lab8.dat[i,3])
>>>
>>>  p_unadj
>>>
>>>  #if executed on my Mac, running R v.2.8, this works (and did using
>>> 2.8 on my
>>>  old windows machine). Running v. 2.10 in Windows, I get NAs.
>>>
>>>  --
>>>  Michael D. Rennie, Ph.D.
>>>  Postdoctoral Fellow, Environmental and Life Sciences Program
>>>  Trent University
>> > 2140 East Bank Drive, DNA Building (2nd Floor)
>>>  Peterborough, Ontario K9J 7B8
>>>  Vox:705.755.2287 Fax:705.755.1559
>>>  www.*people.trentu.ca/michaelrennie
>>>
>>>  ______________________________________________
>>>  [hidden email] 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.
>>>
>>
>>
>>
>> --
>> Joshua Wiley
>> Senior in Psychology
>> University of California, Riverside
>> http://*www.*joshuawiley.com/
>>
>> ______________________________________________
>> [hidden email] 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.
>
>

______________________________________________
[hidden email] 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.