首页 文章

基于多个变量[重复]从数据框中删除重复行

提问于
浏览
1

这个问题在这里已有答案:

你好,我是法国工程专业的学生,我有一个大学的项目 . 目前,我想删除数据中的行,如果它们在列的值中相似的话 . 我的数据库看起来像这样:

node   event   grade    std             date                 groupe           name 
6794   57605    100     659  2016-04-08 10:59:45.882267  cm1_mat_001_eap_001    c8

6794   84007     0      659  2016-04-29 13:44:47.156998  cm1_mat_001_eap_001    c8

6794   86729    100     659  2016-05-02 14:17:02.945516  cm1_mat_001_eap_001    c8

6794   88921    100     659  2016-05-04 09:00:52.157544  cm1_mat_001_eap_001    c8

6797   10119     0      659  2016-05-17 08:27:28.371022  cm1_mat_001_eap_001    c8

6794   98291    100     729  2016-05-12 08:27:13.920052  cm1_mat_001_eap_001    c8

6794   99711    100     729  2016-05-13 06:50:13.60001   cm1_mat_001_eap_001    c8

6812   87995    100     796  2016-05-03 07:33:31.108374  cm1_mat_002_eap_003    c8

目前,如果列中的值相似,我想删除行 . 在我的例子中,如果“node”和“std”列中的值相似,我想根据这个条件删除重复行并保留第一行 .

6794   57605    100     659  2016-04-08 10:59:45.882267 cm1_mat_001_eap_001    c8

6797   10119     0      659  2016-05-17 08:27:28.371022  cm1_mat_001_eap_001    c8

6794   98291    100     729  2016-05-12 08:27:13.920052 cm1_mat_001_eap_001    c8

6812   87995    100     796  2016-05-03 07:33:31.108374 cm1_mat_002_eap_003    c8

正如您所看到的那样,第四行仍然存在,因为我想要创建的条件仅在“node”和“std”相似时才考虑重复数据 . 在这种情况下,“std”的值等于前一行,但不是“node”中的值 .

谢谢你的帮助 . :)

1 回答

  • 4

    使用基数R,

    df[!duplicated(df[c('node', 'std')]),]
    

相关问题