在我的数据框中,第一列是一个因素,我想删除具有某个factorname值的行(当值存在时).我试过了:
df <- df[-grep("factorname",df$parameters),]
Run Code Online (Sandbox Code Playgroud)
当目标因子名称存在时,哪种方法很有效.但是,如果不存在factorname,则此命令会破坏数据帧,使其保留0行.所以我尝试过:
df <- df[!apply(df, 1, function(x) {df$parameters == "factorname"}),]
Run Code Online (Sandbox Code Playgroud)
这不会删除违规行.我如何测试的存在factorname并删除行,如果factorname存在?
你可以使用:
df[ which( ! df$parameter %in% "factorname") , ]
Run Code Online (Sandbox Code Playgroud)
(%in%因为它会更好地概括为多个排除标准.)也可能:
df[ !grepl("factorname", df$parameter) , ]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
22780 次 |
| 最近记录: |