gpt4 book ai didi

r - 如何按唯一编号删除多列中的行?

转载 作者:行者123 更新时间:2023-12-03 18:23:35 24 4
gpt4 key购买 nike

给定这样的数据

C1<-c(3,-999.000,4,4,5)
C2<-c(3,7,3,4,5)
C3<-c(5,4,3,6,-999.000)
DF<-data.frame(ID=c("A","B","C","D","E"),C1=C1,C2=C2,C3=C3)

如何删除所有列中的 -999.000 数据

我知道这对每列有效
DF2<-DF[!(DF$C1==-999.000 | DF$C2==-999.000 | DF$C3==-999.000),]

但我想避免引用每一列。我认为有一种简单的方法可以引用特定数据框中的所有列,又名:
DF3<-DF[!(DF[,]==-999.000),]

或者
DF3<-DF[!(DF[,(2:4)]==-999.000),]

但显然这些不起作用

出于好奇,如果您能理解为什么我需要在结束方括号前使用最后一个逗号,请加分,如下所示:
==-999.000),]

最佳答案

以下可能有效

DF[!apply(DF==-999,1,sum),]

或者如果您可以连续使用多个 -999
DF[!(apply(DF==-999,1,sum)>0),]

或者
DF[!apply(DF==-999,1,any),]

关于r - 如何按唯一编号删除多列中的行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10974404/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com