在R中删除文件某些行的列中的相同值
我有一个这样的文件在R中删除文件某些行的列中的相同值,r,R,我有一个这样的文件 1 3 1 2 1 10 1 5 **5 5** 6 7 8 9 4 6 1 2 **10 10** ...... 该文件包含数千行。我想知道,如何删除R列中包含相同值的行(包含5个5的行和包含10个10的行)?我知道如何删除重复的列或行,但如何有选择地删除它们?谢谢。:) 我会使用索引来实现这一点,例如使用小数据帧: myDf <- data.frame(a=c(3,5,8,6,9,4,3), b=c(3,3,5,8,9,6,4)) myDf &
1 3
1 2
1 10
1 5
**5 5**
6 7
8 9
4 6
1 2
**10 10**
......
该文件包含数千行。我想知道,如何删除R列中包含相同值的行(包含5个5的行和包含10个10的行)?我知道如何删除重复的列或行,但如何有选择地删除它们?谢谢。:) 我会使用索引来实现这一点,例如使用小数据帧:
myDf <- data.frame(a=c(3,5,8,6,9,4,3), b=c(3,3,5,8,9,6,4))
myDf <- myDf[myDf$a != myDf$b,]
<代码> MyDF我会考虑编写这样的帮助函数:
indicator <- function(indf) {
rowSums(vapply(indf, function(x) x == indf[, 1],
logical(nrow(indf)))) == ncol(indf)
}
dat[dat[[1]!=dat[[2]],]
应该这样做
mydf <- data.frame(a=c(3,5,8,6,9,4,3),
b=c(3,3,5,8,9,6,4),
c=c(3,4,5,6,9,7,2))
indicator(mydf)
# [1] TRUE FALSE FALSE FALSE TRUE FALSE FALSE
mydf[!indicator(mydf), ]
# a b c
# 2 5 3 4
# 3 8 5 5
# 4 6 8 6
# 6 4 6 7
# 7 3 4 2