[R] Re: none
Douglas Bates
bates at stat.wisc.edu
Tue Dec 15 16:57:47 CET 1998
>>>>> "Troels" == Troels Ring <tring at mail1.stofanet.dk> writes:
Troels> This is again a very simple question, and I
Troels> hope you will accept it. I have a dataset with variables
Troels> in columns all with their names. Now I want to add a
Troels> column indicating simply identity of patients, numbered
Troels> according to row. There are 34 rows. So I did:
>> ID <- c(1:34)
Troels> but was not allowed to
>> Ptt <- cbind(patients,ID)=20
Troels> and was informed that
>> Error: names attribute must be the same length as the vector
There may be a problem with the way R is handling your request but I
think we would need to know a bit more about the form of the data
before we could decide.
Your initial description sounds as if the data are in a "data frame",
the class of object created by the "read.table" function. One way to
discover the form of the data is to use the "class" or, more
generally, the "data.class" functions. For example, data I am using
in a lecture today has this form
R> T10.5 # Average SAT math scores by sex - Hocking, table 10.5
Year Mmath Fmath
1 67 514 467
2 68 512 470
3 69 513 470
4 70 509 465
5 71 507 466
6 72 505 461
7 73 502 460
8 74 501 459
9 75 495 449
10 76 497 446
11 77 497 445
12 78 494 444
R> data.class( T10.5 )
[1] "data.frame"
If you find your data are in a matrix and you wish to convert them to
a data frame, you can use the "as.data.frame" function.
R> matSAT <- as.matrix( T10.5 )
R> matSAT
Year Mmath Fmath
1 67 514 467
2 68 512 470
3 69 513 470
4 70 509 465
5 71 507 466
6 72 505 461
7 73 502 460
8 74 501 459
9 75 495 449
10 76 497 446
11 77 497 445
12 78 494 444
R> data.class( matSAT )
[1] "matrix"
R> dfSAT <- as.data.frame( matSAT )
R> data.class( dfSAT )
[1] "data.frame"
Generally data frames are preferred to matrices for storing data sets.
If your data are in a data frame then you can create a new variable by
assigning a component of that name in the data frame. It looks like
R> dfSAT$ID <- 1:nrow(dfSAT)
R> dfSAT
Year Mmath Fmath ID
1 67 514 467 1
2 68 512 470 2
3 69 513 470 3
4 70 509 465 4
5 71 507 466 5
6 72 505 461 6
7 73 502 460 7
8 74 501 459 8
9 75 495 449 9
10 76 497 446 10
11 77 497 445 11
12 78 494 444 12
A more complete discussion is provided in section 2.1 of Venables and
Ripley (1997), "Modern Applied Statistics with S-PLUS (second
edition)". Please see also the "R Complements" file for the book as
mentioned in
http://www.stats.ox.ac.uk/pub/MASS2/Compl.shtml
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
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
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._
More information about the R-help
mailing list