根据所选列的数量,数据框切片的返回类型会发生变化,如下所示
> dim(df)
[1] 10 5
> colselect
[1] TRUE FALSE FALSE FALSE FALSE
> colselect2
[1] TRUE FALSE FALSE TRUE FALSE
> str(df[,colselect])
logi [1:10] TRUE TRUE TRUE TRUE FALSE FALSE ...
> str(df[,colselect2])
'data.frame': 10 obs. of 2 variables:
$ a: logi TRUE TRUE TRUE TRUE FALSE FALSE ...
$ b: logi FALSE TRUE TRUE FALSE TRUE TRUE ...
始终返回 10*k 数据帧的正确 R 语法是什么?