2017-08-10 75 views
-2

我最近在研究生物信息學。我必須爲我的變量編輯row.names。這裏是我的情況:編輯R中的行名的字符長度

我有從癌症基因組圖譜下載的臨牀數據和基因表達值。我必須匹配排名,但在臨牀數據中,我有這樣的排名「TCGA-6D-AA2E」。但是在基因表達中,排名如「TCGA-6D-AA2E-01A-11R-A38B-07」。 通常我使用「匹配」命令來匹配行名稱,但字符長度不相同。所以我的問題是「有沒有簡單的方法來編輯行名的字符長度?」

+0

你想要做什麼?你想減少長度嗎?你想選擇一些字符?你能更明確嗎? –

+0

我想選擇此行名稱中的前十二個字符「TCGA-6D-AA2E-01A-11R-A38B-07」 – Elen

回答

0

你可以使用grep函數:

gene.names <- c("TCGA-6D-AA2E-01A-11R-A38B-07", "TCGC-6D-AA2E-01A-11R-A38B-07", "TAGA-6D-AA2E-01A-11R-07", "TCGA-6D-AA2E-A38B-07") 

pick <- "TCGA-6D-AA2E" 

grep(pick, gene.names) 
# [1] 1 4 

編輯基於註釋:使用substr挑12個字符:

substr(gene.names, 0,12) 
#[1] "TCGA-6D-AA2E" "TCGC-6D-AA2E" "TAGA-6D-AA2E" "TCGA-6D-AA2E" 
+0

謝謝Mikko! substr正是我需要的! – Elen