2012-11-19 13 views
5

मैं दोहरे उद्धरण चिह्नों का उपयोग कर पाठ स्ट्रिंग्स स्वरूपण जबकि आरएक पाठ स्ट्रिंग

में कार्य करने के लिए भेजा जा रहा है एक उदाहरण समारोह कोड पर विचार करें साथ में समस्या आ रही कार्य करने के लिए दोहरे उद्धरण चिह्नों से युक्त भेजें

foo(4, "Learning R is fun!") 

उत्पादन होता है:

जब निम्न इनपुट के साथ चल रहा है

लेकिन जब मैं (सुझाव के रूप में here विभिन्न तरीकों से,) की कोशिश "आर" के बजाय आर लिखने के लिए, मैं निम्नलिखित आउटपुट मिलता है:

> foo(4, "Learning R is fun!") 
[1] "Learning R is fun!" 
[1] 20 
> foo(4, "Learning "R" is fun!") 
Error: unexpected symbol in "funfun(4, "Learning "R" 
> foo(4, "Learning \"R\" is fun!") 
[1] "Learning \"R\" is fun!" 
[1] 20 
> foo(4, 'Learning "R" is fun!') 
[1] "Learning \"R\" is fun!" 
[1] 20 

as.character(...) या dQuote(...) का प्रयोग के रूप में सुझाव here तोड़ने के लिए लगता है विभिन्न तर्कों की वजह से कार्य करें।

उत्तर

1

आप इन तरीकों की कोशिश कर सकते लगता है:

foo <- function(numarg = 5, textarg = "** Default text **"){ 
    cat(c(textarg, "\n")) 
    val <- (numarg^2) + numarg 
    return(val) 
} 

foo <- function(numarg = 5, textarg = "** Default text **"){ 
    print(noquote(textarg)) 
    val <- (numarg^2) + numarg 
    return(val) 
} 

foo(4, "Learning R is fun!") 
foo(4, 'Learning "R" is fun!') 
+0

धन्यवाद! वे दोनों काम करते हैं! मैंने देखा है कि मैं 'cat (c (textarg," \ n ") 'का उपयोग करके आउटपुट को स्वरूपित करने के बजाय' बिल्ली (टेक्स्टर्ग," \ n ") 'का उपयोग कर सकता हूं। जिसे प्राथमिकता दी जाती है? – Khaloymes

5

दो तरीकों से मुझे पता है।

> cat("Learning \"R\" is fun!") 
Learning "R" is fun! 

ध्यान दें कि यह काम करता है क्योंकि मैं cat का उपयोग करें, जो करने का इरादा है:

> cat('Learning "R" is fun!') 
Learning "R" is fun! 

दूसरा दोहरे उद्धरण चिह्नों से बचने के लिए है: सबसे पहले सिर्फ एकल उद्धरण का उपयोग शुरू और चरित्र स्ट्रिंग समाप्त होने वाला है कंसोल के लिए आउटपुट स्ट्रिंग्स। यह आप print() जो उत्पादन के बजाय वस्तु से पता चलता का उपयोग यह

+2

जब मैं थोड़ी देर के कार्य करने के लिए पाठ संदेश भेजने 'cat' इस्तेमाल करने की कोशिश, पाठ ठीक से प्रारूपित है (का उपयोग करते हुए आपके किसी भी सुझाव), केवल इस बार, यह 'लर्निंग' आर आउटपुट करता है "मजेदार है! 'सीखना' आर 'के बजाय नल' मजेदार है! '। किसी भी विचार को 'न्यूल' जोड़ को समाप्त करने का कोई विचार? (और इससे भी महत्वपूर्ण बात यह है कि कोई विचार कहां से आया?) – Khaloymes

संबंधित मुद्दे