3

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

是否有任何其他命令可以通过其 id 访问行?

4

2 回答 2

6

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

X["35",]
于 2013-04-22T10:32:56.827 回答
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
于 2013-04-22T03:39:41.443 回答