首页 文章

如果值中的a值等于R中的上一行,则删除整行

提问于
浏览
1

我是R编程的新手,我需要一个帮助来根据单个列的值删除整行 . 如果单列中的值等于前一行值,我想删除该行 .

以下是我的数据,

x.id x.timestamp x.count
71    1  1435114605      61
72    1  1435114606      61
73    1  1435114659      61
74    1  1435114719      62
75    1  1435114726      62
76    1  1435114780      62
77    1  1435155998      62
78    1  1435156059      62
79    1  1435156076      62
80    1  1435156119      62

这里我想根据x $ x.count值删除行 .

我的输出应该是,

x.id x.timestamp x.count
71    1  1435114605      61
74    1  1435114719      62

我不能在这里使用重复或唯一的功能,因为稍后在数据集中重复相同的值 . 我只想根据以前的值删除数据 .

1 回答

  • 6

    您可以使用 diff 来查找连续行之间的差异大于0(加上第一行) . 如果 x.count 未排序,可能使用 !=0 .

    dat[c(T, diff(dat$x.count)>0), ]
    
    #    x.id x.timestamp x.count
    # 71    1  1435114605      61
    # 74    1  1435114719      62
    

相关问题