From ggrothendieck at gmail.com  Sun Jul 16 06:03:36 2006
From: ggrothendieck at gmail.com (Gabor Grothendieck)
Date: Sun, 16 Jul 2006 00:03:36 -0400
Subject: [Rd] Matrices given to pt? [was: [R] for loops and counters]
In-Reply-To: <20060716013440.GA7167@phenix.progiciels-bpi.ca>
References: <20060716013440.GA7167@phenix.progiciels-bpi.ca>
Message-ID: <971536df0607152103h41897c0ftf3ec214df7bef1fd@mail.gmail.com>

I think what is happening is that it is preserving attributes of the input.
e.g.

> x <- 1:3
> attr(x, "A") <- 23
> pt(x, 3)
[1] 0.8044989 0.9303370 0.9711656
attr(,"A")
[1] 23

Note that attribute A was preserved.  Since matrices are just
vectors with a dim attribute that would imply the result.  I agree
that it would be a good idea to document it if it is intended.

On 7/15/06, Fran?ois Pinard <pinard at iro.umontreal.ca> wrote:
> Hi, people.
>
> I was a bit intrigued by the message quoted below.  Indeed, if pt() is
> given a matrix, it returns a matrix.  Should this feature be documented?
> ?pt speaks about "a vector of quantiles", and says nothing about the
> type of what it returns.
>
> The same might presumably apply to other distribution-related functions.
>
> ----- Forwarded message from Martyn Plummer <plummer at iarc.fr> -----
>
> From: Martyn Plummer <plummer at iarc.fr>
> Date: Thu Apr 10 10:07:01 2003
> Subject: [R] for loops and counters
>
> Peter,
>
> You didn't say what goes wrong, but you mind find this version more useful
>
> tstat <- (matrix(means, k,k, byrow=TRUE) - matrix(means, k,k,byrow=FALSE))/rms
> pvalue <- 2*(1-pt(abs(tstat), df=df))
> pvalue[upper.tri(pvalue)]
>
> S is designed to allow you to work with "whole objects", which means that
> for loops can (and should) be avoided.
>
> Martyn
>
> On 05-Oct-99 Peter B. Mandeville wrote:
> > I am trying to assign values to a vector (pvalue). Similar code works in C
> > but not in R. What am I doing wrong?
>
> >       r <- pvalue <- 0
> >       for(i in (1:(k-1))){
> >               for(j in (i+1):k){
> >                       r <- r+1
> >                       tstat <- (means[i]-means[j])/rms
> >                       pvalue[r] <- 2*(1-pt(abs(tstat),df))
> >               }
> >       }
> -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
> r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
> Send "info", "help", or "[un]subscribe"
> (in the "body", not the subject !)  To: r-help-request at stat.math.ethz.ch
> _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._
>
> ----- End forwarded message -----
>
> --
> Fran?ois Pinard   http://pinard.progiciels-bpi.ca
>
> ______________________________________________
> R-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
>



[Rd] Matrices given to pt? [was: [R] for loops and counters]
Gabor Grothendieck