r "।" के बाद स्ट्रिंग का हिस्सा निकालें




regex string (3)

मैं एनसीबीआई संदर्भ अनुक्रम प्रवेश संख्याओं के साथ काम कर रहा हूं जैसे वैरिएबल a :

a <- c("NM_020506.1","NM_020519.1","NM_001030297.2","NM_010281.2","NM_011419.3", "NM_053155.2")  

बायोमार्ट पैकेज से जानकारी प्राप्त करने के लिए मुझे प्रवेश संख्या के बाद .1 , .2 आदि को हटाने की आवश्यकता है। मैं आमतौर पर इस कोड के साथ ऐसा करता हूं:

b <- sub("..*", "", a)

# [1] "" "" "" "" "" ""

लेकिन जैसा कि आप देख सकते हैं, यह इस चर के लिए सही तरीका नहीं है। क्या कोई मुझे इस बारे में सहायता कर सकता है?


आपको बस अवधि से बचने की जरूरत है:

a <- c("NM_020506.1","NM_020519.1","NM_001030297.2","NM_010281.2","NM_011419.3", "NM_053155.2")

gsub("\\..*","",a)
[1] "NM_020506"    "NM_020519"    "NM_001030297" "NM_010281"    "NM_011419"    "NM_053155" 

तुम यह कर सकते थे:

sub("*\\.[0-9]", "", a)

या

library(stringr)
str_sub(a, start=1, end=-3)

हम दिखा सकते हैं कि वे फ़ाइल नाम हैं और एक्सटेंशन हटाते हैं:

tools::file_path_sans_ext(a)
# [1] "NM_020506"    "NM_020519"    "NM_001030297" "NM_010281"    "NM_011419"    "NM_053155"




biomart