我有一个具有唯一行名称的数据框。我想根据行名创建一个包含单行的子集数据框。当我使用data[rownames(data)==name, ]
时,我没有获得数据框而是获取值向量。该程序将根据行名称过滤数据并创建新的数据框。
答案 0 :(得分:4)
默认情况下,我们需要drop = FALSE
,[
有drop = TRUE
。因此,如果有一行,则会转换为较低的维度,即vector
。
data[rownames(data)==name, , drop = FALSE ]
答案 1 :(得分:1)
您可以使用subset
。
set.seed(4577) # Make it reproducible
dat <- data.frame(A = sample(letters, 10), X = rnorm(10))
subset(dat, subset = rownames(dat) == 3)
# A X
#3 j 0.339270