2

我有一个数据框,其中列名以某些字符开头:

> colnames(df)
[1] "p.crossfencing"  "p.livestockdrinking"  "v.livestocktrail"
[5] "v.landclearing"  "v.grazelivestock"     "v.useequipment"

ETC...

我想根据前几个字符选择列(例如,那些以 开头的列名"v.")基本上,我正在尝试ls(pattern="")对对象执行相同的操作,但在我的情况下,对于数据框中的列名.

编辑:下面托马斯的回答让我走上了正确的道路。我需要使用:

j[grep("^v.",j)]

哪里j <- colnames(df)

4

2 回答 2

4

你在找df[,grep("^v.",names(df))]吗?

于 2013-10-07T23:06:34.000 回答
0

您还可以编写如下内容:

df[, (grep(x = colnames(df), pattern = "^v."))]
于 2021-07-05T11:41:11.243 回答