2016-04-05 33 views
-2

如何通過模式匹配重命名名稱;僅保留其與 「B」 從第2列開始琴絃4使用模式匹配將名稱重命名爲

colnames(J)

 "ensembl_gene_id" "Sample_3605_1_B1_1321584_RC" "Sample_3605_2_B2_1321584_Eso" "Sample_3605_5_B14_1326370_RC" "Sample_3605_8_B19_1326383_RC" "chromosome_name" "start_position" "end_position" 

預期輸出

"ensembl_gene_id" "B1" "B2" "B14" "B19" "chromosome_name" "start_position"     "end_position" 

我試圖

j[2:4] <- gsub(pattern = "^Sample_3605_[[:digit:]]","",j[2:4])  
+4

'colnames(J)< - GSUB( 「\\ 1」,colnames( 「* _(B [^ _] *)*。?」。 j)條)'? –

回答

1

你可以請執行以下操作:

j[2:4] <- gsub(pattern = "^Sample_3605_[[:digit:]]_(B[^_]*).*","\\1",j[2:4])  
+0

Karthik,你能解釋一下這裏使用的通配符嗎? – beginner

1

,當然還有stringr溶液

library(stringr) 
str_extract(colnames(j)[2:4], 'B[0-9]+')