对不起列,但不同的标识符,如果实在是太基本的,但我不熟悉R.如何提取具有相同名称中的R
我有具有相同的列名多列数据帧,所以后被导入到R,标识符已被添加。事情是这样的:
A = c(2, 3, 5)
A.1 = c('aa', 'bb', 'cc')
A.2 = c(TRUE, FALSE, TRUE)
B = c(1, 2, 5)
B.1 = c('bb', 'cc', 'dd')
B.2 = c(TRUE, TRUE, TRUE)
df = data.frame(A, A.1, A.2, B, B.1, B.2)
df
A A.1 A.2 B B.1 B.2
1 2 aa TRUE 1 bb TRUE
2 3 bb FALSE 2 cc TRUE
3 5 cc TRUE 5 dd TRUE
我想提取具有A
所有列,而不管标识符扩展,因此它变得像:
A A.1 A.2
1 2 aa TRUE
2 3 bb FALSE
3 5 cc TRUE
我知道我们能
df2 = df[, c("A", "A.1", "A.2")]
但是我有很多这种类型的列,所以我不想单独输入。我相信有这样的巧妙方法。
谢谢!
这可能是好是肯定会发生什么_after_在A了。 'df [,grep(“^ A(\\。\\ d +)?$”,names(df))]' – G5W
@ 42-它很棒!只是好奇:如果想要“A”和“B”,那么该怎么办?假设“B”也具有与“A”相同的模式。 – kin182
@ kin182请看这个问题的附加答案。 – Wen