paste0 ставит "не в том месте"

Я создаю столбцы переменных.

myVars=paste0("var",rep(1:5))
myVars
paste0(myVars,"=rnorm(5)")

выход:

"var1=rnorm(5)" "var2=rnorm(5)" "var3=rnorm(5)" "var4=rnorm(5)"
"var5=rnorm(5)"

обратите внимание, что вторая кавычка должна быть после var1, как показано ниже. Я также хочу вставить запятую, увиденную в желаемом выводе. Это должно потребовать что-то вроде paste0 (A, B, C)

Хочу:

"var1"=rnorm(5), "var2"=rnorm(5), "var3"=rnorm(5), "var4"=rnorm(5),
"var5"=rnorm(5)

r
person Mary A. Marion    schedule 22.11.2019    source источник


Ответы (1)


Если нам нужно иметь двойные кавычки вокруг «myVars», используйте dQuote с q = FALSE, чтобы избежать причудливых кавычек

out <- paste0(dQuote(myVars, q = FALSE), "=rnorm(5)")
cat(out, '\n')
#"var1"=rnorm(5) "var2"=rnorm(5) "var3"=rnorm(5) "var4"=rnorm(5) "var5"=rnorm(5) 

если это должна быть одна строка

out1 <- paste(dQuote(myVars, q = FALSE), "=rnorm(5)", sep="", collapse=", ")
cat(out1, '\n')
#"var1"=rnorm(5), "var2"=rnorm(5), "var3"=rnorm(5), "var4"=rnorm(5), "var5"=rnorm(5) 
person akrun    schedule 22.11.2019
comment
Объяснение помогает. Я пытаюсь улучшить. Спасибо. мм - person Mary A. Marion; 22.11.2019