过滤R中的数据帧

时间:2017-05-12 13:55:35

标签: r dataframe filter

我在R中有一个数据帧df,有两列:ID和时间(ID是1到1000之间的整数)。 我现在在ID列中出现的所有不同ID值中随机选择x个数字(使用命令“sample”)。这个1到1000之间的x随机数现在存储在名为xvector的向量中。 现在我想删除数据框中的所有行,其中ID不包含在我的xvector中,换句话说,我想过滤相对于xvector的日期帧。

当我使用df [df $ ID == xvector,]结果数据帧时,包含我的xvector中包含ID的所有行,我不明白为什么会这样。有人有想法吗?

感谢您的帮助! 迎接

1 个答案:

答案 0 :(得分:1)

ID <- 1:100
data <- 201:300

df <- data.frame(id = ID, dat = data)

xvector <- sample(ID, 10)

result <- df[df$id %in% xvector,]

result

我相信这会给你想要的结果

编辑: 可替换地:

 subset(df, df$id %in% xvector)