Possible Duplicate:
R: Multiline Comment Workarounds?R: come commento blocco di codice
voglio commentare diverse righe di codice in R. C'è un modo di farlo senza dover mettere un # prima di ogni riga - un po 'come /* blocked out code */
in SAS ?
Possible Duplicate:
R: Multiline Comment Workarounds?R: come commento blocco di codice
voglio commentare diverse righe di codice in R. C'è un modo di farlo senza dover mettere un # prima di ogni riga - un po 'come /* blocked out code */
in SAS ?
La maggior parte degli editor utilizza una sorta di scorciatoia per commentare blocchi di codice. Gli editor predefiniti usano qualcosa come comando o controllo e virgoletta singola per commentare le righe di codice selezionate. In RStudio è comando o controllo '/'. Controlla nel tuo editor.
Sta ancora commentando riga per riga, ma rimuove anche le righe selezionate. Per il Mac RGUI è l'opzione-comando '(immagino che Windows sia l'opzione di controllo). Per Rstudio è solo comando o controllo + maiusc + C di nuovo.
Sì, questa è una funzione super-pratica. In Emacs, è sufficiente evidenziare l'area in attesa di commento e digitare 'C-x r t 'seguito dai caratteri che si desidera aggiungere (qualcosa come' "##" '). Per indentare un blocco di codice per SO, fai la stessa cosa, ma sostituisci gli ultimi tre caratteri con quattro spazi! –
In Emacs puoi anche usare 'M-x comment-region'. Non sapevo di 'C-x r', grazie! –
CTRL + MAIUSC + C alterna il commento della selezione in eclissi/Statet. –
Una sorta di blocco di commento utilizza un'istruzione if:
if(FALSE) {
all your code
}
Funziona, ma ho quasi sempre utilizzare il blocco di commento opzioni dei miei editori (RStudio, Kate, Kwrite).
avvolgerla in una funzione non utilizzata:
.f = function() {
## unwanted code here:
}
Io uso RStudio o Emacs e utilizzare sempre le scorciatoie editor disponibile per commentare regioni. Se questa non è una possibilità, puoi usare la risposta di Paolo, ma funziona solo se il tuo codice è sintatticamente corretto.
Ecco un altro modo sporco che ho trovato, avvolgere in scan()
e rimuovere il risultato. Memorizza il commento in memoria per un breve periodo, quindi probabilmente non funzionerà con commenti molto grandi. Meglio ancora è mettere solo i segni #
davanti a ogni riga (possibilmente con le scorciatoie dell'editor).
foo <- scan(what="character")
These are comments
These are still comments
Can also be code:
x <- 1:10
One line must be blank
rm(foo)
Variabile anche più sporca. Definisci '" # "<- function() invisible (scan (what = character()))' quindi avvia il blocco dei commenti con '" # "()'. –
La risposta precedente dovrebbe in realtà avere dei backtick piuttosto che delle virgolette (anche se funziona in entrambi i casi), ma mi vergognerei se riuscirò a capire come ottenere i backtick in un blocco di codice all'interno di un commento. –
Richie, bel suggerimento, ma le barre genereranno messaggi di errore: Errore: imprevisto '/' in: "' # # (# inizio del commento http:/" – PatrickT
Ho trattato questo a talkstats.com in posti 94, 101 & 103 trovato nel thread: Share Your Code. Come altri hanno già detto, Rstudio potrebbe essere un modo migliore per andare. Memorizzo queste funzioni nel mio profilo .RRF e le uso effettivamente a ma per bloccare automaticamente le linee di codice rapidamente.
Non proprio bello come speravate ma potrebbe essere un approccio.
R non esegue commenti su più righe. Vedi thread simile: http://stackoverflow.com/questions/4131338/is-it-possibile-per-have-a-multi-line-comments-in-r – Maiasaura
Il mio miglior suggerimento sarebbe quello di scrivere una macro (o plugin nel caso in cui si usi qualcosa come Sublime Text 2) e assegnare una combinazione di tasti in modo tale che il testo selezionato (cioè i commenti) ottenga un # in primo piano una volta che si preme il tasto appropriato. – Maiasaura
Questa è un'idea. Peccato che R non lo faccia in modo nativo. Grazie, Maiasaura. – user702432