我有一个数据帧:
ID user study var varb varc varf
101 a b 3 4 3 4
102 b a 4 5 5 6
103 g a 4 4 5 6
104 b c 6 7 7 5
我试图通过使用索引位置
删除前三列df <- df[-c(1:3)]
我确信这个方法可以删除列。事实上,我第一次运行这一行时,它确实像预期的那样工作,但现在它所做的只是删除行而不是列。现在,我只是使用subset()
方法来删除列,这很好。但是,我想复习一下我的R,因为我很长时间没有写了,已经生疏了。我之前使用的原始方法哪里出错了?
如果是data.table
,我们可能需要
df[, -c(1:3), with = FALSE]
或者用dplyr
中的select
library(dplyr)
df %>%
select(-(1:3))