[英]Remove Rows From Data Frame where a Row matches a String
我是否刪除了 dataframe 中某行符合字符串匹配條件的所有行?
例如:
A,B,C
4,3,Foo
2,3,Bar
7,5,Zap
我將如何返回排除 C = Foo 的所有行的 dataframe:
A,B,C
2,3,Bar
7,5,Zap
只需將==
與否定符號 ( !
) 一起使用。 如果 dtfm 是您的 data.frame 的名稱:
dtfm[!dtfm$C == "Foo", ]
或者,在比較中移動否定:
dtfm[dtfm$C != "Foo", ]
或者,使用subset()
甚至更短:
subset(dtfm, C!="Foo")
您可以使用dplyr
package 輕松刪除這些特定行。
library(dplyr)
df <- filter(df, C != "Foo")
我在數據框中有一列(A),其中包含 3 個值(是,否,未知)。 我只想過濾那些值為“是”的行,這是代碼,希望這對你們也有幫助——
df <- df [(!(df$A=="no") & !(df$A=="unknown")),]
如果您希望使用 dplyr 來刪除行“Foo”:
df %>%
filter(!C=="Foo")
我知道這已得到解答,但如果有人可以從中獲得幫助,請執行此操作
庫 (dplyr) df %>% 過濾器(!c=="foo)
df[,df$c=="foo", ]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.