2016-06-20 9 views
1

Mein rownames in df wie folgt aussieht:Split-Strings durch zwei verschiedene Symbole

hsa-miR-20a-5p_TAAAGTGCTTATAGTGCAGGTAA_0;I-A;0;g 

ich sie möchte so aussehen, Raum statt _ getrennt und ;

hsa-miR-20a-5p TAAAGTGCTTATAGTGCAGGTAA 0 I-A 0 g 

Ich glaube, ich könnte gsub verwenden?

+4

Wenn Sie, gerade, wollen sie ersetzen '_' und ';' sehen [hier] (http://stackoverflow.com/questions/11936339/in-r-how-do-i-replace-text-within-a-string) und, auch, '? Regex'. Für keinen Regex-Ersatz siehe auch "? Chartr"; 'chartr (" _; "," "," hsa-miR-20a-5p_TAAAGTGCTTATAGTGCAGGTAA_0; I-A; 0; g ")' –

Antwort

2

Wir können die OR dh | verwenden mehrere Trennzeichen entsprechen und ersetzen Sie es mit Platz " "

gsub("_|;", " ", "hsa-miR-20a-5p_TAAAGTGCTTATAGTGCAGGTAA_0;I-A;0;g") 
#[1] "hsa-miR-20a-5p TAAAGTGCTTATAGTGCAGGTAA 0 I-A 0 g" 

Wenn wir es Teile geteilt müssen

strsplit("hsa-miR-20a-5p_TAAAGTGCTTATAGTGCAGGTAA_0;I-A;0;g", "[_;]")[[1]] 
#[1] "hsa-miR-20a-5p"   "TAAAGTGCTTATAGTGCAGGTAA" "0"      "I-A"      "0"      
#[6] "g" 
Verwandte Themen