मेरे पास एक स्ट्रिंग वेरिएबल है जिसमें वर्णमाला [ए-जेड], स्पेस [], और एस्ट्रोफ़े ['], उदाहरण हैं। x <- "a'b c"
मैं एस्ट्रोफ़े ['] को खाली []] से बदलना चाहता हूं, और स्पेस [] को अंडरस्कोर [_] के साथ बदलना चाहता हूं।आर में एक gsub() या chartr() कथन में एकाधिक तारों को बदलें?
x <- gsub("'", "", x)
x <- gsub(" ", "_", x)
यह बिल्कुल काम करता है, लेकिन जब मेरे पास बहुत सारी स्थिति होती है, तो कोड बदसूरत हो जाता है। इसलिए, मैं chartr()
का उपयोग करना चाहता हूं, लेकिन chartr()
रिक्त स्थान से निपट नहीं सकता है, उदाहरण के लिए।
x <- chartr("' ", "_", x)
#Error in chartr("' ", "_", "a'b c") : 'old' is longer than 'new'
क्या इस समस्या को हल करने का कोई तरीका है? धन्यवाद!
आप इसे पहले से ही दो gsubs के साथ हल कर चुके हैं। अगर यह बहुत बदसूरत लग रहा है, तो आप अपना खुद का रैपर फ़ंक्शन बना सकते हैं जो मुझे लगता है कि "सुंदर" है। लेकिन आप 'chartr' का उपयोग नहीं कर सकते क्योंकि" खाली "एक चरित्र नहीं है, यह एक चरित्र की कमी है। – MrFlick