0

数据框的一列可以通过name(same as colname) 但不是 a提取rowname。示例数据框:

> dbar
   aa    bb    cc
r1  1   one 1e+01
r2  2   two 1e+01
r3  3 three 1e+01
r4  4  four 1e+01
r5  5  five 1e+01

Rgames> dbar$aa
[1] 1 2 3 4 5
Rgames> dbar$r2 #doesn't work
NULL
 # have to to something like
Rgames> subset(dbar,rownames(dbar) =='r3') #or dbar[rownames(dbar=='r3'),] 
   aa    bb    cc
r3  3 three 1e+01

我可以看到,允许df$somename搜索行名称意味着需要data.frame函数验证所有列和行名称作为一个集合是唯一的。那么,我是不是要求太多了 :-) 还是我应该坚持我上面使用的方法?

4

1 回答 1

3

这是一个有点开放式的问题,但如果您按行进行子集化并且想使用行名,@rmk 是对的。

示例数据框:

    DF <- data.frame(A = rep(c(1,2), 5), B = rep(10, 10))
    row.names(DF) <- letters[1:10]

DF["a",]返回:

  A  B
a 1 10        

或者您可以使用行索引DF[1,]

于 2013-05-30T19:46:33.237 回答