[R] Named rows in a table (data frame) read from a file

R. Michael Weylandt <michael.weylandt@gmail.com> michael.weylandt at gmail.com
Thu Nov 17 01:31:45 CET 2011


Don't use attach. I know it's tempting, but it's really not worth it in the long run.  (Cf. Genesis 3, ff.)

This works:

F1["a", "Price"]

Incidentally the reason yours didn't work is because the row names are part of F1, not Price so attach() doesn't carry them along. 

In short, row names good; attach bad. 

Michael


On Nov 16, 2011, at 7:11 PM, JulioSergio <juliosergio at gmail.com> wrote:

> I read a table as follows:
> 
>> F1 <- read.table("Rtext3.txt")
>> F1
>  Price Floor Area Rooms Age Cent.heat
> a 52.00   111  830     5 6.2        no
> b 54.75   128  710     5 7.5        no
> c 57.50   101 1000     5 4.2        no
> d 57.50   131  690     6 8.8        no
> e 59.75    93  900     5 1.9       yes
> 
> As it is seen, the rows have a name. However I don't know how to access a 
> particular element from that name, for instance,
> 
>> attach(F1)
>> Price
> [1] 52.00 54.75 57.50 57.50 59.75
>> Price[["a"]]
> Error en Price[["a"]] : subíndice fuera de  los límites
>> Price$a
> Error en Price$a : $ operator is invalid for atomic vectors
>> Price['a']
> [1] NA
>> Price["a"]
> [1] NA
> 
> If I cannot access particular elements of the frame components by the row names, 
> is there any use of having the rows named?
> 
> Thanks,
> 
> Sergio.
> 
> ______________________________________________
> 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