我创建了一个名为z的数据框。
a = c(1,1,1);
b = c(2,2,2);
c = c(3,3,3);
d = c(4,4,4);
z = data.frame(a,b,c,d);
Run Code Online (Sandbox Code Playgroud)
我想从数据框 z 中删除列 c 和 d。
我试过这个代码
p = subset(z , colnames(z) == c('a' , 'b'))
Run Code Online (Sandbox Code Playgroud)
但我得到了这个结果
a b c d
1 2 3 4
1 2 3 4
Run Code Online (Sandbox Code Playgroud)
我应该在此命令中进行哪些更改以从z 中删除c和d列。
我们可以使用以下内容来指定按名称选择哪些列。
z[, c("a", "b")]
Run Code Online (Sandbox Code Playgroud)
这也有效。
z[c("a", "b")]
Run Code Online (Sandbox Code Playgroud)
或者我们可以使用以下命令首先指定要删除向量中的哪些列,然后选择不在该向量中的列。
cols_remove <- c("c", "d")
z[, !(colnames(z) %in% cols_remove)]
Run Code Online (Sandbox Code Playgroud)