Mam problem z użyciem cudzysłowów podczas formatowania ciągi tekstowe wysyłane do funkcji w R.Wyślij tekst zawierający podwójne cudzysłowy funkcjonować
Rozważmy przykład kodu funkcję:
foo <- function(numarg = 5, textarg = "** Default text **"){
print (textarg)
val <- numarg^2 + numarg
return(val)
}
podczas pracy z następującego kodu:
foo(4, "Learning R is fun!")
wyjście jest:
[1] "Learning R is fun!"
[1] 20
Ale gdy próbuję (na różne sposoby, jak sugeruje here) napisać „R” zamiast R, otrzymuję następujące wyjścia:
> 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
Korzystanie as.character(...)
lub dQuote(...)
jak sugeruje here wydaje się złamać funkcja z powodu różnej liczby argumentów.
Dzięki! Oboje działają! Zauważyłem, że mogę użyć tylko 'cat (textarg," \ n ") zamiast formatowania wyjścia jako tablicy używając' cat (c (textarg, "\ n") '. Który jest preferowany? – Khaloymes