R 基于名称选择变量(简单正则表达式)

R 基于名称选择变量(简单正则表达式),r,dataframe,subset,R,Dataframe,Subset,我想合并变量名,这意味着我应该如何处理它们。我想象一个数据框架“调查” rbern()函数需要库(Rlab)。 调查您可以使用grep()和colnames(): 如果你有一系列你喜欢的名字,你也可以使用match。也许你经常需要变量“脉搏”、“运动”、“身高”、“体重”和“年龄”,但它们有时会出现在不同的地方或与其他附加变量一起出现。您可以保存公共名称的向量,然后将它们与数据帧进行匹配,并按照您想要的顺序获得标准列的新df basenames <- c("pulse", "exercis

我想合并变量名,这意味着我应该如何处理它们。我想象一个数据框架“调查”

rbern()函数需要库(Rlab)。 调查您可以使用
grep()
colnames()


如果你有一系列你喜欢的名字,你也可以使用match。也许你经常需要变量“脉搏”、“运动”、“身高”、“体重”和“年龄”,但它们有时会出现在不同的地方或与其他附加变量一起出现。您可以保存公共名称的向量,然后将它们与数据帧进行匹配,并按照您想要的顺序获得标准列的新df

basenames <- c("pulse", "exercise", "height", "weight", "age")
get.columns <- match(basenames, names(dataframe))
new.df <- dataframe[,get.columns]
basenames“operators”包允许一些类似Perl的语法:

library(operators)

survey[, colnames(survey) %~% "bern"]

basenames <- c("pulse", "exercise", "height", "weight", "age")
get.columns <- match(basenames, names(dataframe))
new.df <- dataframe[,get.columns]
library(operators)

survey[, colnames(survey) %~% "bern"]
subset(survey, select = colnames(survey) %~% "bern")