奇怪的问题,但是我如何过滤,以使数据帧的所有行都被返回?例如,假设您有以下数据帧:
Pts <- floor(runif(20, 0, 4))
Name <- c(rep("Adam",5), rep("Ben",5), rep("Charlie",5), rep("Daisy",5))
df <- data.frame(Pts, Name)假设您想为此数据帧设置一个预定的筛选器,例如:
Ptsfilter <- c("2", "1")然后,您将运行该数据帧,以获得新的过滤数据帧
dffil <- df[df$Pts %in% Ptsfilter, ]然而,有时您根本不希望过滤数据帧,并且为了自动化和最小化工作负载,您不希望必须返回并删除/注释掉此过滤器的每个实例。您只希望能够调整Ptsfilter的值,以便在运行该行代码时不会从数据帧中过滤出任何行。
我已经尝试过/猜测过这样的事情:
Ptsfilter <- c("")
Ptsfilter <- c(" ")
Ptsfilter <- c()无济于事。
是否可以为Ptsfilter输入一个值来实现此目标?
发布于 2016-03-08 02:14:00
您可能需要定义一个函数来为您完成此操作。
filterDF = function(df,filter){
if(length(filter)>0){
return(df[df$Pts %in% filter, ])
}
else{
return(df)
}
}https://stackoverflow.com/questions/35850410
复制相似问题