Staram się zrozumieć na wysokim poziomie różnice między R Markdown
i R NoteBook
. Wiem, że są ze sobą powiązane, ale chciałbym dowiedzieć się, jak są ze sobą powiązane. Rozumiem, że:
Wiem, że notebooki R to tak naprawdę dokumenty R Markdown, ale jestem zdezorientowany co do terminologii.
Nowa opcja pliku RStudio ma oba R Markdown
i, R NoteBook
a wybranie jednego z nich otwiera R Markdown
plik, ale z niewielkimi różnicami. Próbuję więc po prostu dowiedzieć się, dlaczego istnieją dwie opcje i jaka jest między nimi różnica?
Rozumiem, że notebooki R są nowo wprowadzone, a R Markdown istnieje już od jakiegoś czasu. Część zamieszania może wynikać z tego, że nigdy R Markdown
wcześniej nie korzystałem z R Notebook, więc moje powiązane lub bardziej szczegółowe pytanie brzmi
Co robi R NoteBook inaczej niż tylko używanie R MarkDown lub jakie nowe możliwości oferuje R NoteBook?
Wszystkie moje trafienia w wyszukiwarkę internetową wskazują, że R Notebook używa R Markdown, ale nie znalazłem żadnej pomocy na temat tego, co dokładnie różni się między nimi.
Odpowiedzi:
O ile rozumiem i z mojej konfiguracji, nie ma różnicy w kodowaniu. Różnica polega na renderowaniu. Rozszerzenie pliku jest takie samo.
Kiedy tworzysz nowy Notatnik R, dodaje
html_notebook
on opcję wyjścia w nagłówku. To jest różnica. Następnie można szybko wyświetlić podgląd renderowania bez konieczności jego łączenia. Odświeża również podgląd za każdym razem, gdy zapisujesz. Jednak w tym podglądzie nie masz wyjścia kodu (żadnych liczb, żadnych tabel ..) (przynajmniej w mojej konfiguracji). Bezhtml_notebook
na wyjściu nie ma podglądu przyciskujak widać, pojawiają się opcje podglądu, ale można je również wykonać na drutach w dowolnym formacie. Doda go do kodu nagłówka, gdy to zrobisz.
Jeśli jednak nie masz tego
html_notebook
w swoim nagłówku, możesz tylko zrobić na drutach swój kod, aby zobaczyć, jak wygląda (cała książka) (zignoruj dodatkową domyślną opcję, którą umieściłem w obrazku)a opcja podglądu nie pojawia się w menu rozwijanym
W przeciwnym razie działa tak samo. W przypadku niektórych domyślnych konfiguracji dane wyjściowe są również domyślnie ukryte w sekcji kodu.
Zauważ, że możesz mieszać kilka opcji wyjściowych w nagłówku, aby zachować podgląd i zachować opcje łączenia do eksportu.
źródło
Niedawno znalazłem ten post, który wyjaśnił mi problem R Markdown vs.R Notebook. http://uc-r.github.io/r_notebook
Oto kilka odpowiednich wierszy:
Podczas tworzenia notatnika języka R w programie RStudio występuje również problem dotyczący łączenia w porównaniu z podglądem:
Mam nadzieję, że uznasz to za przydatne.
źródło
Z powyższych odpowiedzi nie wynika do końca jedna z najważniejszych różnic.
Z sekcji 3.2.1.3 Księgi Bookdown :
Innymi słowy, dzianie tworzy nowe środowisko i uruchamia tam cały kod. Z kolei Notatnik języka R używa środowiska globalnego do renderowania pliku HTML. W rzeczywistości w przypadku notatnika R zmiany w pliku HTML następują za każdym razem, gdy
.Rmd
dokument jest zapisywany.Preview
Przycisk jedynie otwiera plik HTML w swoim obecnym stanie. Żaden kod nie jest uruchamiany.Preview
dosłownie oznacza to, co mówi: po prostu pokazuje, co już zostało zrobione.Dlaczego to ma znaczenie? Na przykład, jeśli plik R Notebook
.Rmd
jest otwarty, ale nie są uruchomione żadne fragmenty kodu, plik HTML wyrenderuje cały kod przeceny i wejściowy poprawnie, ale nie pojawi się żaden wynik. Lub załóżmy, że definiujesz jakąś zmiennąx
w konsoli, ale nie we fragmencie kodu. Jeśli spróbujesz użyćx
gdzieś w notatniku R, będzie działać dobrze. Podgląd dokumentu HTML również będzie działał dobrze. Z drugiej strony łączenie dokumentu wygeneruje błąd „nieznanej zmiennej”, ponieważ łączenie uruchamia cały kod w nowym środowisku, a zmiennax
nigdy nie została zdefiniowana w pliku przecen.źródło
Różnica polega na tym, że w R Notebok możesz pisać fragmenty Markdown i R-code, a następnie bezpośrednio je wykonywać i od razu wyświetlać wyniki. To rodzaj notatnika dla ciebie.
R Markdown służy do tworzenia ładnie wyglądających wyników w formacie html, pdf lub Word Document. Łączenie fragmentów Markdown i R-Code-Chunks. Krótkie wprowadzenie i motywacja można znaleźć tutaj .
Jeśli chcesz uzyskać więcej informacji o pakiecie knitr, kliknij tutaj.
źródło
Oto jedna praktyczna różnica, którą znalazłem:
Kiedy trzeba wypowiedzieć się część tekstu, wkładki RMarkdown
#
w każdej linii tekstu, natomiast RNotebook starannie oddaje tekst między jednej pary<!--
,--->
znaków (jak w plikach HTML)Można powiedzieć, co za banalna różnica. Jednak tylko z tego powodu zawsze używam R Notebook (zamiast RMarkdown) w RStudio dla wszystkich moich dokumentów. We wszystkim innym wydają się takie same (przynajmniej dla moich potrzeb, takich jak generowanie html i pdf)
W przeciwnym razie moje komentarze nagle stają się nagłówkami, jak poniżej:
# This part is commented out, but will show as Heading 1 font text
źródło
R Markdown
używa również<!-- -->
do komentowania fragmentów tekstu. Tylko fragmenty kodu są komentowane za pomocą#
. MojaRStudio
wersja to 1.3.1056.Podobieństwa: Notatnik R i dokument R Markdown są bardzo podobne. Format Markdown działa w obu typach plików. Oba formaty plików mogą być używane do przekazywania kodu wraz z wynikami i komentarzami innym osobom. Można zdecydować się na łączenie utworzonego dokumentu z formatami wyjściowymi HTML, PDF i WORD. Jeśli w kodzie jest błąd, dane wyjściowe nie zostaną wygenerowane. Aby uruchomić plik: CTRL + SHIFT + K i wstawić fragment kodu: CTRL + ALT + I.
Dokument R Markdown: Dokument Rmd można skonfigurować za pomocą kreatora i zawiera opcje odtwarzalności dokumentu, slajdów prezentacji, błyszczącej aplikacji itp. Oraz opcję tworzenia dokumentu z szablonu. Jeśli zmienisz kod, wyjście jest wykonywane na wyjściu Rmd. Nie oferuje opcji podglądu dokumentu. Nagłówek YAML ma format wyjściowy: output: html_document
R Notebook Document: Dokument R nb jest uruchamiany bezpośrednio i nie pojawia się żaden kreator (jak w przypadku .RMD). Wraz z plikiem notatnika generowany jest dodatkowy plik html o rozszerzeniu * .nb.html. Notebook ma opcję podglądu. Jeśli jakikolwiek kod zostanie zmieniony lub edytowany, nowe dane wyjściowe nie są wyświetlane. Dane wyjściowe są wyświetlane w samym edytorze kodu. Niezależnie od tego, jaki był stary plik wyjściowy, jest on tylko renderowany. Zmiana kodu nie powoduje generowania nowych danych wyjściowych. Aby wyświetlić wyjście kodu, musimy wykonać fragment, a następnie pojawi się on na wyjściu. Nagłówek YAML ma dane wyjściowe jako: output: html_notebook
Nagłówek YAML : Jeśli zmienimy nagłówek YAML z jednego pliku na inny, zmieni to typ dokumentu. Na przykład masz notatnik R z nagłówkiem YAML jako html_notebook. Jeśli zmienisz nagłówek YAML, twój notatnik R zostanie przekonwertowany na dokument R Markdown.
Jeśli musisz wybrać jeden, skorzystaj z dokumentu RMarkdown, ponieważ oferuje on większą kontrolę i aktualizuje dokumenty, gdy tylko je zrobisz.
źródło
http://rmarkdown.rstudio.com/r_notebooks.html#notebook_file
„Zwykłe dokumenty R Markdown są„ połączone ”, ale notatniki są„ podglądane ”. Podczas gdy podgląd notatnika wygląda podobnie do wyrenderowanego dokumentu R Markdown, podgląd notatnika nie wykonuje żadnych fragmentów kodu R”
źródło
Od jrnolda :
Pliki notatnika R pokazują dane wyjściowe wewnątrz edytora, jednocześnie ukrywając konsolę. Pliki markdown R pokazują dane wyjściowe wewnątrz konsoli i nie pokazują danych wyjściowych w edytorze. Różnią się wartością wyjścia w swoich nagłówkach YAML.
Nagłówek YAML dla notebooka R będzie zawierał wiersz,
Nagłówek YAML dla pliku przeceny R będzie zawierał wiersz,
Skopiowanie nagłówka YAML z notatnika R do pliku przeceny R zmienia go w plik przeceny R. i odwrotnie. Dokładniej, zmiana wartości
output
na Wynika to z faktu, że RStudio IDE podczas otwierania i pakiet rmarkdown podczas dziania używa nagłówka YAML pliku, aw szczególności wartościoutput
klucza w nagłówku YAML, do określenia typu dokumentu jest.źródło