从数据帧中删除特定行

问题描述:

可能重复:
removing specific rows from a dataframe从数据帧中删除特定行

比方说,我有由许多行的数据帧,这样的:

X <- data.frame(Variable1=c(11,14,12,15),Variable2=c(2,3,1,4)) 

Variable1 Variable2 
11   2 
14   3 
12   1 
15   4 

现在,假设我想要创建一个与此相同的新数据框,只是我要删除其中Variable1具有特定的数值。比方说,我们有这些数字存储在向量,V

也就是说,如果V包含数字11和12,新的数据帧应该是这样的:

Variable1 Variable2 
14   3 
15   4 

我一直在寻找一段时间的网络现在试图找出如何做这样的事情。主要是,我只需要一些说removeRow(dataframe, row)或类似的东西。

+9

你是否搜索过这个问题?答案肯定涉及使用百分号%和提取操作符“[”,但我会认为它已被应答。例如,第一个用你的问题标题进行搜索:http://*.com/questions/7112872/removing-specific-rows-from-a-dataframe –

+4

这是一个相当普遍的R练习。这里有一个提示,而不是尝试删除不想要的行,尝试创建一个包含您想要的行的新数据框。 – Chris

+0

你应该发布一个可重复的例子。 'dput'是你的朋友! – Zach

X <- data.frame(Variable1=c(11,14,12,15),Variable2=c(2,3,1,4)) 
> X 
    Variable1 Variable2 
1  11   2 
2  14   3 
3  12   1 
4  15   4 
> X[X$Variable1!=11 & X$Variable1!=12, ] 
    Variable1 Variable2 
2  14   3 
4  15   4 
> X[ ! X$Variable1 %in% c(11,12), ] 
    Variable1 Variable2 
2  14   3 
4  15   4 

不管你喜欢,你都可以使用这个功能。