我的数据框如下所示:
Var1 var2
1 1 11
2 2 NA
3 NA NA
4 4 14
5 NA NA
6 6 16
7 7 17
8 8 NA
9 9 19
10 10 NA
11 1 0
我需要读取数据框的最后一行(任意),如果它是“TRUE”,我需要保留该列,如果它是“假”'我需要删除该特定列并将输出存储在新数据框中
对于上面的例子,结果应该是:
Var1
1 1
2 2
3 NA
4 4
5 NA
6 6
7 7
8 8
9 9
10 10
删除了2ND列,因为最后一行显示的是' 0'。
答案 0 :(得分:2)
尝试使用as.logical
:
> mydf[as.logical(mydf[nrow(mydf), ])]
Var1
1 1
2 2
3 NA
4 4
5 NA
6 6
7 7
8 8
9 9
10 10
11 1
或mydf[, as.logical(mydf[nrow(mydf), ]), drop = FALSE]
如果您希望相同的代码也与矩阵兼容。