Skip to content
Back to formatted view

Raw Message

Message-ID: <Pine.A41.4.33.0107090854520.38150-100000@homer28.u.washington.edu>
Date: 2001-07-09T16:08:28Z
From: Thomas Lumley
Subject: memory blues
In-Reply-To: <3B49D1E1.73DC8F3D@cbs.dtu.dk>

On Mon, 9 Jul 2001, Laurent Gautier wrote:

> It seems a data.frame with only one column becomes a special case.... and
> I cannot figure out why (I'd see no problem in being told to rtfm, I could not
> find
> anything about that in the help pages)


data.frame() ideally makes up names from the tags of the arguments, eg
> data.frame(a=1:5,b=rnorm(5))
  a          b
1 1 -2.0499827
2 2 -0.4364342
3 3  0.5880059
4 4 -0.7636817
5 5 -1.3021187

If the arguments don't have tags it converts the expressions into names,
so in this example data.frame tried to convert 1:5, rnorm(5) and
rep(1,5) into valid names.

>  data.frame(1:5,rnorm(5),rep(1,5))
  X1.5   rnorm.5. rep.1..5.
1    1 -0.5282023         1
2    2  0.6964649         1
3    3  1.1548943         1
4    4  1.3833800         1
5    5 -0.1553645         1


This approach isn't sufficient when one of the arguments to data.frame has
multiple columns. Ideally the column names of the matrix are used but if
one of the arguments is a matrix that itself has no column names then
data.frame falls back on the unimaginative "X1","X2"..

The moral of the story is that you can make up better names than
data.frame can.

	-thomas

Thomas Lumley			Asst. Professor, Biostatistics
tlumley at u.washington.edu	University of Washington, Seattle

-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
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
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._