r - 删除重复行,同时保留底线
问题描述
我想删除 R 中的重复行,保留较低行的信息,即从此数据中:
example <- structure(list(var1 = c(1, 1, 2, 2, 3, 4, 5, 6, 6), var2 = c(0,
0, 0, 0, 0, 0, 0, 0, 0), var3 = c(1, 0, 0, 0, 0, 1, 0, 0, 0),
var4 = c(1, 1, 1, 1, 0, 1, 1, 0, 0), var5 = c(1, 1, 1, 0,
0, 1, 1, 0, 0), Year = 2001:2009), row.names = c(NA, -9L), class = "data.frame")
我想删除将行保留在底部的重复项,以便我得到:
example1 <- structure(list(var1 = c(1, 2, 3, 4, 5, 6), var2 = c(0, 0, 0,
0, 0, 0), var3 = c(0, 0, 0, 1, 0, 0), var4 = c(1, 1, 0, 1, 1,
0), var5 = c(1, 0, 0, 1, 1, 0), Year = c(2002, 2004, 2005, 2006,
2007, 2009)), row.names = c(NA, -6L), class = "data.frame")
是否可以应用`dplyr包的duplicated
功能或功能?distinct
我很感激任何帮助。谢谢。
解决方案
使用 dplyr 工具的@ThomasIsCoding 响应运行良好。我发现了另一种可能性,似乎更快:
example1 <- example[!duplicated(example$var1, fromLast = T), ]
推荐阅读
- mysql - 获取 MYSQL 查询中别名列的百分比
- ruby-on-rails - Cannot access assets - dockerized Rails app, nginx as a reverse proxy
- python - 使用 Flask 和 Python 将记录添加到 Firebase 集合时出现问题
- python - 在numpy python中使用零值缩放数组
- c - 为什么我能够输入比我在 C 中创建的更多的结构对象?
- node.js - 如何以其他用户身份使用 Microsoft Graph 客户端从 Microsoft Teams Bot 发送电子邮件?
- android - Android - 将重复作业从 Job Dispatcher 迁移到 Work Manager - 我需要取消旧作业吗?
- python - 如何将一张图片粘贴到另一张图片上到定义的区域
- node.js - Heroku:如何强制抛出 H12 错误?
- java - 检查列表是否
包含列表中的所有元素