2012-02-16 11 views
35

Come si usa il carattere della nuova riga in R?R - devo aggiungere un carattere di nuova riga esplicito con print()?

myStringVariable <- "Very Nice ! I like"; 

myStringVariabel <- paste(myStringVariable, "\n", sep=""); 

Il codice di cui sopra non funziona

P.S C'è sfide significative quando googling questo genere di cose dal momento che la query "R carattere nuova linea" sembra confondere google. Vorrei davvero che R avesse un nome diverso.

+9

Ecco perché [RSeek] (http://www.rseek.org/) c'è! – nico

+3

Qual è l'output che desideri? fa 'cat (incolla ('prima riga', '\ n', 'nuova linea'))' fai quello che ti aspetti? R non analizza le stringhe a meno che tu non lo chieda. anche [questo post SO] (http://stackoverflow.com/questions/4071586/printing-newlines-with-print-in-r) – Justin

+2

"newline" è una parola. Dovrebbe aiutare il tuo googling. – smci

risposta

85

La natura di R indica che non si avrà mai una nuova riga in un vettore di caratteri quando si stampa semplicemente.

> print("hello\nworld\n") 
[1] "hello\nworld\n" 

Cioè, i ritorni a capo sono nella stringa, solo che non vengono stampati come nuove linee. Tuttavia, è possibile utilizzare le altre funzioni, se si desidera stampare loro, come cat:

> cat("hello\nworld\n") 
hello 
world 
+8

Vedere anche Circle 8.1.22 di 'The R Inferno' http://www.burns-stat.com/pages/Tutor/R_inferno.pdf –

2

Esempio su NewLine Char:

for (i in 1:5) 
    { 
    for (j in 1:i) 
    { 
    cat(j) 
    } 
    cat("\n") 
    } 

Risultato:

1 
    12 
    123 
    1234 
    12345 
Problemi correlati