2017-10-09 239 views
-1

我想基于一个条件只删除其中一个数据帧行。只删除满足条件的第一行数据帧

但现有代码将删除所有包含此条件的行。但是我想只删除满足条件的第一行。

我该怎么做?

+2

你需要更加具体。这是迅速关闭的典型问题。请给出一个条件的例子。还有一个数据框。同时,考虑'which(condition)[1]'作为你的df的索引。 –

回答

0

下面是一个例子如何删除匹配的元素的第一个实例:

> df <- data.frame(x=rep(1:3,3)) 
> df[,'x'] 
[1] 1 2 3 1 2 3 1 2 3 
> df[which(df$x==2)[1],'x'] 
[1] 2 
> df[-which(df$x==2)[1],'x'] 
[1] 1 3 1 2 3 1 2 3 
+1

' - 这(z)'是不安全的。如果条件从未满足,您将得到一个空表,或者使用'-which(z)[1]',您将得到一个包含NAs的单行表。 – Frank

相关问题