आर

2011-08-25 9 views
5

में कुछ स्ट्रिंग पैटर्न को हटाने से मैं आर में निम्नलिखित स्ट्रिंग में अवधि (।) साइन इन करने से पहले सब कुछ हटाना चाहता हूं। मैंने gsub फ़ंक्शन के साथ प्रयास किया।आर

Test <- c("Data.A", "Data.B", "Data.C", "Data.D") 
gsub("[.]", "", Test) 

किसी भी मदद की अत्यधिक सराहना की जाएगी। gsub("^.*\\.", "", Test)

यह क्या कर रहा है: धन्यवाद

+0

बहुत समान प्रश्न: http://stackoverflow.com/q/3003527/168747 – Marek

उत्तर

9

इस प्रयास करें? किसी भी चरित्र, किसी भी समय के साथ स्ट्रिंग की शुरुआत से मेल खाता है। फिर एक ही अवधि से मेल खाता है। यह सब कुछ के साथ बदल देता है।

> gsub("^.*\\.", "", Test) 
[1] "A" "B" "C" "D" 
6

या यदि आप पाते हैं नियमित अभिव्यक्ति घृणित, आप इस्तेमाल कर सकते हैं sapply और strsplit:

sapply(strsplit(Test,".",fixed = TRUE),"[[",2) 
[1] "A" "B" "C" "D" 

इस पर प्रत्येक तत्व बंटवारे है '।' और फिर प्रत्येक से परिणाम के दूसरे तत्व को पकड़ना।

+0

अधिक लचीला। धन्यवाद – MYaseen208

+3

+1 - घृणित का अच्छा उपयोग। – Chase