按ID获取data.frame行

时间:2013-04-22 02:26:37

标签: r

我有一个data.frame $ X $通过过滤掉一些行从data.frame $ Y $获得。 我现在有兴趣访问ID $ i $的行(按ID,我的意思是出现在第一列中的值,由R生成)。我只知道$ X [i,] $命令,根据我的理解,它给了我$ $ $ $行$ $ $ $但不是ID $ i $的行。

是否有其他命令通过其ID访问行?

2 个答案:

答案 0 :(得分:5)

作为替代方案,您可以使用引号""通过其rownames()的相应元素引用给定行,例如:

X["35",]

答案 1 :(得分:1)

您可以使用row.names(X)来访问ID信息。示例如下。

X <- subset(airquality, Temp > 80, select = c(Ozone, Temp))
X$id <- row.names(X)
head(X)
        #   Ozone Temp id
        #29    45   81 29
        #35    NA   84 35
        #36    NA   85 36
        #38    29   82 38
        #39    NA   87 39
        #40    71   90 40
X[X$id==35,]
        #   Ozone Temp id
        #35    NA   84 35