2016-11-08 13 views
1

n番目の文字の後にアルファベット順に並べ替えたい文字列を並べ替えたい。R:n番目の文字の後ろにアルファベット順にソートする

> v <- c("ENCSR529JNJ_HNR35NPK_21_K562", "ENCSR529MBZ_AP22IG_11_K562", "ENCSR529MBZ_AP22IG_21_K562", "ENCSR530BOP_DUPT6H_11_K562", "ENCSR530BOP_DUPT6H_21_K562") 

を、11文字の後にソートした後、Vになる::文字列は、例えば、数字と文字の両方を含めることができ

"ENCSR529MBZ_AP22IG_11_K562", "ENCSR529MBZ_AP22IG_21_K562", "ENCSR530BOP_DUPT6H_11_K562", "ENCSR530BOP_DUPT6H_21_K562", "ENCSR529JNJ_HNR35NPK_21_K562" 

すべてのヘルプは大歓迎されます!ありがとう

答えて

1
v[order(substr(v, start = 12, stop = max(nchar(v))))] 
# [1] "ENCSR529MBZ_AP22IG_11_K562" "ENCSR529MBZ_AP22IG_21_K562" "ENCSR530BOP_DUPT6H_11_K562" "ENCSR530BOP_DUPT6H_21_K562" 
# [5] "ENCSR529JNJ_HNR35NPK_21_K562" 

substr(v, start = 12, stop = max(nchar(v)))は、最初の11文字を省略して部分文字列を返します。だから私たちはそれを頼みます。

+0

これは意味があります、ありがとうございます! – arielle

関連する問題