根据一列中的零值删除 R Dataframe 行

remove R Dataframe rows based on zero values in one column

我有这个数据框,其中两列有一组零值。 df

 Sl_No  No_of_Mails No_of_Responses
 1       10           2
 2        0           0
 3       20           0
 4       10          10
 5        0           0
 6        0          NA
 7       10          NA
 8       10           0

我想删除那些 No_of_Mails 等于零的行而不影响其他列。 我试过下面的代码

row_sub = apply(df, 1, function(row) all(row !=0 ))
df[row_sub,]

这将删除所有 0 值,包括 number_of_responses 列中的值。我希望那个专栏不受干扰 这个我也试过

 df[df$No_of_Mails][!(apply(df, 1, function(y) any(y == 0))),].

这将删除所有行并给我一个 table 零行。

只需根据 No_of_Mails 列中的值对数据框进行子集化:

df[df$No_of_Mails != 0, ]

Demo