Znam już odpowiedź na to pytanie. Ale doszedłem do wniosku, że na liście użytkowników R jest tak często pytany, że powinna istnieć jedna solidna, dobra odpowiedź. O ile mi wiadomo, w R. nie ma funkcji komentarzy wielowierszowych. Czy ktoś ma więc jakieś dobre obejście?
Podczas gdy spora część pracy w R zwykle obejmuje sesje interaktywne (co budzi wątpliwości co do potrzeby wielowierszowych komentarzy), są chwile, kiedy musiałem wysyłać skrypty do kolegów i kolegów z klasy, z których większość obejmuje nietrywialne bloki kodu. A dla osób pochodzących z innych języków jest to dość naturalne pytanie.
W przeszłości użyłem cytatów. Ponieważ łańcuchy obsługują podziały wierszy, uruchamianie skryptu języka R z
"
Here's my multiline comment.
"
a <- 10
rocknroll.lm <- lm(blah blah blah)
...
działa w porządku. Czy ktoś ma lepsze rozwiązanie?
Możesz to łatwo zrobić w RStudio :
wybierz kod i kliknij CTR+ SHIFT+, C aby skomentować / usunąć komentarz.
źródło
Sprytną sztuczką dla RStudio, którą właśnie odkryłem, jest użycie,
#'
ponieważ tworzy to samorozwijającą się sekcję komentarzy (po powrocie do nowej linii z takiej linii lub wstawieniu nowych linii do takiej sekcji jest to automatycznie komentowany).źródło
#'
[Aktualizacja] Na podstawie komentarzy.
[Oryginalna odpowiedź]
Oto inny sposób ... sprawdź zdjęcie na dole. Wytnij i wklej blok kodu do RStudio.
Komentarze wielowierszowe, które sprawiają, że korzystanie ze środowiska IDE jest bardziej efektywne, są „dobrą rzeczą”, większość IDE lub prostych edytorów nie ma podświetlania tekstu w prostych blokach z komentarzami; chociaż niektórzy autorzy poświęcili trochę czasu, aby zapewnić analizę składniową w ciągach tutaj. W R nie mamy też komentarzy wielowierszowych ani ciągów tekstowych, ale użycie niewidocznych wyrażeń w RStudio daje całą tę korzyść.
Tak długo, jak w sekcji nie ma żadnych lewych apostrofów, które mają być użyte w komentarzach wielowierszowych, łańcuchach tutaj lub niewykonanych blokach komentarzy, może to być coś wartego uwagi.
A oto zdjęcie ...
źródło
comment=function(z){invisible(expression(z))}
co może pomóc ludziom zrozumieć, co się dzieje!Comments<-function(`@Comments`)rm(`@Comments`)
. Ponieważ komentarz jest już prawidłową funkcją.Comments=function(x){}
będzie działać dla gdziex
jest wyrażeniem wielowierszowym oddzielonym cudzysłowem odwrotnym. Nie będzie próbował tego oceniać ...Comment <- function(`@Comments`) {invisible()}
jeśli komentarz jest zbyt długi, pojawia się błąd:variable names are limited to 10000 bytes
Przychodzą mi do głowy dwie opcje. Pierwsza opcja to skorzystanie z edytora umożliwiającego blokowanie komentarzy i odkomentowywanie (np. Eclipse). Drugą opcją jest użycie instrukcji if. Ale to pozwoli ci tylko „skomentować” poprawną składnię języka R. Dlatego dobrym rozwiązaniem jest dobry edytor.
źródło
Jeśli uznasz za niewiarygodne, że jakikolwiek język tego nie zaspokoi.
To jest prawdopodobnie najczystsze obejście:
źródło
Oprócz korzystania z przesadnego sposobu komentowania kodów wieloliniowych po prostu instalując RStudio, możesz używać Notepad ++, ponieważ obsługuje on podświetlanie składni języka R
(Wybierz wiele linii) -> Edytuj -> Skomentuj / Usuń komentarz -> Przełącz komentarz blokowy
Pamiętaj, że najpierw musisz zapisać kod jako źródło .R (podświetlone na czerwono)
źródło
Używam vim do edycji skryptu R.
Powiedzmy, że skrypt R to test.R, zawierający powiedzmy „Line 1”, „Line 2” i „Line 3” w trzech oddzielnych wierszach.
Otwieram test.R w wierszu poleceń z Vimem, wpisując "vim test.R". Następnie przechodzę do pierwszej linii, którą chcę skomentować, wpisuję „Control-V”, strzałkę w dół do ostatniej linii, którą chcę skomentować, wpisuję wielką literę, tj. „I” do wstawienia, wpisuję „#”, a następnie naciśnij klawisz Escape, aby dodać znak „#” do każdego wiersza, który wybrałem, naciskając klawisze w dół. Zapisz plik w Vimie, a następnie zamknij Vima wpisując ": wq". Zmiany powinny pojawić się w Rstudio.
Aby usunąć komentarze w Vimie, zacznij od pierwszej linii nad znakiem „#”, który chcesz usunąć, ponownie wykonaj „Control-V” i strzałką w dół do ostatniej linii, z której chcesz usunąć znak „#”. Następnie wpisz „dd”. Znaki „#” należy usunąć.
Istnieje kilka sekund opóźnienia między zmianami do testu.R w Vimie są odzwierciedlane w Rstudio.
źródło
W RStudio prostym sposobem na zrobienie tego jest napisanie komentarza, a gdy użyjesz CTRL + Shift + C do skomentowania linii kodu, użyj CTRL + SHIFT + /, aby ponownie wprowadzić komentarz do wielu linii, aby ułatwić czytanie.
źródło
W Pythonie tworzysz komentarz wielowierszowy z 3 pojedynczymi cudzysłowami przed i po komentarzach. Próbowałem tego w R i wydaje się, że działa również.
Na przykład.
źródło