[R] How to choose columns in data.frame by parts of columns' names?
Gabor Grothendieck
ggrothendieck at gmail.com
Wed May 31 03:46:17 CEST 2006
On 5/30/06, Guo Wei-Wei <wwguocn at gmail.com> wrote:
> Dear all,
>
> I have a data.frame which has names as following.
> [1] "XG1" "YG1" "XEST" "YEST"
> [2] "XNOEMP1" "XNOEMP2" "YNOEMP1" "YNOEMP2"
> [3] "XBUS10" "XBUS10A" "XBUS10B" "XBUS10C"
> [4] "YBUS10" "YBUS10A" "YBUS10B" "YBUS10C"
> [5] "XOWNBUS" "XSELFEST" "YOWNBUS" "YSELFEST"
>
> Those columns have names beginning with "X" or "Y". Each "X" is paired
> by a "Y", e.g. "XG1" and "YG1", but they are not in the order of "X Y
> X Y ...". I want to combine "X*" and "Y*" like this:
>
> data.new[,"G1"] <- (data.old[,"XG1"] + endata.use[,"YG1"])/2
>
> How to choose columns by parts of names? For example, I can pick out
> XG1 and YG1 because they have the common part "G1".
>
This gives all columns whose column name contains G1:
data.old[, regexpr("G1", colnames(data.old)) > 0]
More information about the R-help
mailing list