r - 过滤唯一行忽略 NA
问题描述
这些是我的示例数据:
df <- data.frame("x" = c(1,1,2,3,4,NA,NA,6), "y"=c(1,1,6,7,8,9,9,10))
x y
1 1 1
2 1 1
3 2 6
4 3 7
5 4 8
6 NA 9
7 NA 9
8 6 10
我想删除重复的条目(=rows),但我想保留至少有一个 NA 的条目。因此,只应删除上面的第二行,而应保留第 7 行。unique(df, incomparables=NA)
产生错误消息。
解决方案
您可以使用complete.cases
andduplicated
来设置子集df
。
df[!complete.cases(df) | !duplicated(df),]
# x y
#1 1 1
#3 2 6
#4 3 7
#5 4 8
#6 NA 9
#7 NA 9
#8 6 10
推荐阅读
- javascript - undefined 不是一个对象(评估 'navigation.navigate') React Native
- python - 为什么我的机器人循环给了我多个答案?
- c++ - 在 C++ 中找到 5 个不同元素的最小和最大元素
- c# - 参数传递一个 TCPClient 对象
- javascript - 我有一个对象数组。每个对象都包含最大和最小键值对。如何找到包含预定义值的对象?
- flutter - Flutter:如何滚动容器而不是其内容?
- java - PropertyDescriptor 类在 java 中的工作原理
- php - 如何从同一张表中获取所有计数的总和?
- firebase - Firebase 在 POST 上创建嵌套对象
- java - Smali 方法更改长参数