【发布时间】:2018-08-27 11:48:55
【问题描述】:
我有一个包含多个变量的数据框,我对如何对其进行子集化感兴趣,以便它只包含第一个重复项。
>head(occurrence)
userId occurrence profile.birthday profile.gender postDate count
1 100469891698 6 47 Female 583 days 0
2 100469891698 6 47 Female 55 days 0
3 100469891698 6 47 Female 481 days 0
4 100469891698 6 47 Female 583 days 0
5 100469891698 6 47 Female 583 days 0
6 100469891698 6 47 Female 583 days 0
在这里您可以看到数据框。 'occurrence' 列计算相同 userId 出现的次数。我尝试了以下代码来删除重复项:
occurrence <- occurrence[!duplicated(occurrence$userId),]
但是,这种方式会删除“随机”重复项。我想保留 postDate 最旧的数据。例如,第一行应该是这样的:
userId occurrence profile.birthday profile.gender postDate count
1 100469891698 6 47 Female 583 days 0
感谢您的帮助!
【问题讨论】:
-
欢迎来到 Stack Overflow。
duplicated标记为TRUE除第一个以外的所有出现(无随机性)。但是,您的数据可能不会按postDate排序(递减),因此您需要在通话之前对其进行排序,或者使用按postDate分组的替代方式,每个userId只保留一行(您可以找到examples of codes to do that in SO Q&A)
标签: r duplicates subset