我的数据框中有列,如
1234-sd 1234-abs 1234-mean 1234-min
我想做一个selection与匹配,以便只有1234-mean被选中。我尝试了类似dplyr::select(matches("^1234-*(!mean)"))的东西,但这不起作用。有什么想法吗?:)
selection
1234-mean
dplyr::select(matches("^1234-*(!mean)"))
esbemjvw1#
在向量上
> x=c("1234-sd","1234-abs","1234-mean","1234-min") > grepl("\\d+-mean",x) [1] FALSE FALSE TRUE FALSE
sh7euo9m2#
你可以使用dplyr的select()和-来删除特定的列。注意,你的变量名是非语法的,你需要用```来转义它们:
select()
-
library(dplyr) df <- data.frame(`1234-sd` = c(1,2,3), `1234-abs` = c(1,2,3), `1234-mean` = c(4,5,6), `1234-min` = c(1,2,3), check.names = FALSE) df %>% select(-`1234-mean`) # 1234-sd 1234-abs 1234-min # 1 1 1 1 # 2 2 2 2 # 3 3 3 3
2条答案
按热度按时间esbemjvw1#
在向量上
sh7euo9m2#
你可以使用dplyr的
select()
和-
来删除特定的列。注意,你的变量名是非语法的,你需要用```来转义它们: