2016-02-29 93 views
0

我想在R中創建基於多個列名稱的數據框的子集。如何篩選R中的列名稱

實施例:

colnames <- c("RecentAVsB","RecentAMinusB","Label","TeamA","TeamB","Venue") 

從這個我想提取特徵那些具有「AVsB」或「AMinusB」或僅「標籤」。而這些AvsB和AMinusB是多次,所以不想使用名稱來提取。我試過..

myvars <- grep("AMinusB" | "AVsB" | "Label", names(df), ignore.case=T) 

但它給錯誤,如:

Error in "AMinusB" | "AVsB" : 
    operations are possible only for numeric, logical or complex types 

什麼是隻選擇那些特定功能的最佳途徑。

+0

請閱讀'help(grep)' –

回答

1

grep中的pattern參數應該是單個字符串,即由兩個雙引號("")或單個('')包圍。

grep("AMinusB|AVsB|Label", names(df), ignore.case=T) 
+1

謝謝@akrun .. –