在 R 中 - 如何删除 data.frame 中的特定列?

in R - How can I remove specific columns in data.frame?

在此 data.frame 中:

我想删除一些 "Total" == 0

的列

我在这里查看了一些关于我的问题的问题,我找到了

但我不能完全适用于我的情况。

假设“x”列中的“总计”表示最后一行(我没有理由不这么认为),我们对最后一行进行子集化(nrow(df1))并删除第一列(如它是非数字的),检查它是否不等于 0。我们从中得到一个逻辑 vector。将 (c) 与 TRUE 连接起来,这样我们也可以获得第一个列,即子集数据集中的“x”。

df1[c(TRUE,df1[nrow(df1),-1]!=0)]
#      x v2 v3
#1     a  1  0
#2     b  3  1
#3 Total  4  1

数据

df1 <- data.frame(x= c('a', 'b', 'Total'),
     v1= c(0,0,0), v2= c(1,3,4), v3=c(0, 1,1))