【问题标题】:How to get only column names of data frame that are starting with particular characters?如何仅获取以特定字符开头的数据框的列名?
【发布时间】:2020-01-16 17:10:46
【问题描述】:
这是我创建数据框并打印所有列名的代码:
df<-data.frame("Sp1"=1:6,"Sp2"=7:12,"Sp3"=13:18, "Dp1"=1:6)
colnames(df)
输出:
[1]“Sp1”“Sp2”“Sp3”“Dp1”
现在我只需要获取以Sp 开头的列名,因此结果应该类似于"Sp1" "Sp2" "Sp3"。该怎么做?
【问题讨论】:
标签:
r
dataframe
data-manipulation
【解决方案1】:
你可以使用正则表达式
grep("^Sp",colnames(df), value = TRUE)
其中^表示字符串的开始
【解决方案2】:
使用dplyr:
library(dplyr)
df <- df %>%
select(starts_with("Sp"))
names(df)
# [1] "Sp1" "Sp2" "Sp3"
如果您只想打印姓名,请使用:
names(df %>%
select(starts_with("Sp")))
#[1] "Sp1" "Sp2" "Sp3"