RMarkdown vignettes v. Jupyter notebooks?

classic Classic list List threaded Threaded
11 messages Options
Reply | Threaded
Open this post in threaded view
|

RMarkdown vignettes v. Jupyter notebooks?

Spencer Graves-4
Hello:


       What are the differences between Jupyter notebooks and RMarkdown
vignettes?


       I'm trying to do real time monitoring of the broadcast quality of
a radio station, and it seems to me that it may be easier to do that in
Python than in R.[1]  This led me to a recent post to
"[hidden email]" that mentioned "Jupyter, Mathematica, and the
Future of the Research Paper"[2] by Paul Romer, who won the 2018 Nobel
Memorial Prize in Economics only a few days ago.  In brief, this article
suggests that Jupyter notebooks may replace publication in refereed
scientific journals as the primary vehicle for sharing scientific
research, because they make it so easy for readers to follow both the
scientific and computational logic and test their own modifications.


       A "Jupyter Notebook Tutorial: The Definitive Guide"[3] suggested
I first install Anaconda Navigator.  I got version 1.9.2 of that.  It
opens with options for eight different "applications" including
JupyterLab 0.34.9, Jupyter Notebook 5.6.0, Spyder 3.3.1 (an IDE for
Python), and RStudio 1.1.456.


       This leads to several questions:


             1.  In general, what experiences have people had with
Jupyter Notebooks, Anaconda Navigator, and RMarkdown vignettes in
RStudio, and the similarities and differences?  Do you know any
references that discuss this?


             2.  More specifically, does it make sense to try to use
RStudio from within Anaconda Navigator, or is one better off using
RStudio as a separate, stand alone application -- or should one even
abandon RStudio and run R instead from within a Jupyter Notebook? [I'm
new to this topic, so it's possible that this question doesn't even make
sense.]


       Thanks,
       Spencer Graves


[1] If you have ideas for how best to do real time monitoring of
broadcast quality of a radio station, I'd love to hear them.  I need
software that will do that, preferably something that's free, open
source.  The commercial software I've seen for this is not adequate for
my purposes, so I'm trying to write my own.  I have a sample script in
Python that will read a live stream from a radio tuner and output a
*.wav of whatever length I want, and I wrote Python eight years ago for
a similar real time application.  I'd prefer to use R, but I don't know
how to get started.


[2] 2018-04-13:
"https://paulromer.net/jupyter-mathematica-and-the-future-of-the-research-paper".
This further cites a similar article in The Atlantic from 2018-04-05:
"www.theatlantic.com/science/archive/2018/04/the-scientific-paper-is-obsolete/556676".

______________________________________________
[hidden email] mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Reply | Threaded
Open this post in threaded view
|

Re: RMarkdown vignettes v. Jupyter notebooks?

Ista Zahn
Hi Spencer,

On Thu, Oct 11, 2018 at 5:08 AM Spencer Graves
<[hidden email]> wrote:
>
> Hello:
>
>
>        What are the differences between Jupyter notebooks and RMarkdown
> vignettes?

Here are some of the main differences I'm aware of:

Rmarkdown files include code and prose. The results produced by the
code do not appear in the Rmarkdown file; instead, the file must be
processed and typeset to produce a .pdf or .html (etc.) file that
includes those results. Jupyter notebooks dispense with with
processing step: output is displayed directly in the notebook. That
is, a notebook includes code, prose, and results, while an Rmarkdown
file includes only code and prose.

Rmarkdown allows control over the inclusion of code and results, and
over how the results are displayed via header arguments. There is no
such thing in Jupyter notebooks. Controlling the precise appearance of
a document produced by Jupyter is much more difficult. Going farther,
one can even say that Jupyter notebooks are designed primarily to be
read as Jupyter notebooks; exporting to other formats is kind of an
afterthought. In contrast, Rmarkdown is designed to produce the final
readable result in another format (.html or .pdf typically).

Rmarkdown is based on markdown, a human readable markup language,
Jupyter notebooks are based on JSON, a data interchange format common
on the web. This means that Rmarkdown files can be easily edited using
any text editor you like. The same is not true of Jupyter notebooks.
While you can of course edit the JSON directly, the format is designed
to be written and read by a computer; editing it yourself is not easy.

Rmarkdown is specific to R (I guess there is some basic support in
knitr for other languages, but in my experience it never worked well)
while Jupyter notebooks are language agnostic and "kernels" exist for
a large number of programming languages. However, each Jupyter
notebook can use only one kernel; you can't easily have R and Python
code in the same notebook.

Jupyter notebooks typically run in your browser where the actual text
editing features are somewhat limited. Rmarkdown is typically run in
an editor such as Emacs or Rstudio where editing and project support
is much better and greater customization may be possible. You can work
indirectly with Jupyter notebooks in Emacs
(https://github.com/millejoh/emacs-ipython-notebook) and perhaps other
editors as well; this goes some way toward escaping the tyranny of the
browser but is more fragile and difficult to get working compared to
Rmarkdown.

Because Jupyter uses a web-based client-server model, it is easy to
provide live interactive notebooks on your website (see e.g.,
https://github.com/jupyterhub/binderhub). As far as I know this is not
currently possible with Rmarkdown.

>
>
>        I'm trying to do real time monitoring of the broadcast quality of
> a radio station, and it seems to me that it may be easier to do that in
> Python than in R.[1]  This led me to a recent post to
> "[hidden email]" that mentioned "Jupyter, Mathematica, and the
> Future of the Research Paper"[2] by Paul Romer, who won the 2018 Nobel
> Memorial Prize in Economics only a few days ago.  In brief, this article
> suggests that Jupyter notebooks may replace publication in refereed
> scientific journals as the primary vehicle for sharing scientific
> research, because they make it so easy for readers to follow both the
> scientific and computational logic and test their own modifications.
>
>
>        A "Jupyter Notebook Tutorial: The Definitive Guide"[3] suggested
> I first install Anaconda Navigator.  I got version 1.9.2 of that.  It
> opens with options for eight different "applications" including
> JupyterLab 0.34.9, Jupyter Notebook 5.6.0, Spyder 3.3.1 (an IDE for
> Python), and RStudio 1.1.456.
>
>
>        This leads to several questions:
>
>
>              1.  In general, what experiences have people had with
> Jupyter Notebooks, Anaconda Navigator, and RMarkdown vignettes in
> RStudio, and the similarities and differences?  Do you know any
> references that discuss this?

I've used both extensively, and noted the differences I've discovered above.

>
>
>              2.  More specifically, does it make sense to try to use
> RStudio from within Anaconda Navigator, or is one better off using
> RStudio as a separate, stand alone application -- or should one even
> abandon RStudio and run R instead from within a Jupyter Notebook? [I'm
> new to this topic, so it's possible that this question doesn't even make
> sense.]

The only advantage I can think of to using Rstudio via Anaconda is
that you could use conda environments to maintain different versions
or R and/or R packages for different projects.

You'll have to weigh the pros and cons to decide whether to switch
from Rstudio to Jupyter notebooks. Depending on what you want to do
there are both advantages and disadvantages, as discussed above.

Finally, I have to give a plug for a couple of related tools that I
find very useful.

Emacs org-mode https://orgmode.org/ gives you the best of both worlds:
notebooks unconstrained by the browser that can include code in
multiple languages, header arguments, excellent export support, etc.
It is superior to both Jupyter and Rmarkdown, except that support only
exists in Emacs.

Jupytext (https://github.com/mwouts/jupytext) is another way to have
it all, by allowing you to edit in markdown or Rmarkdown, and
auto-generating a notebook and possibly other formats for you. I've
only recently started experimenting with it, but so far I like it a
lot.

Best,
Ista

>
>
>        Thanks,
>        Spencer Graves
>
>
> [1] If you have ideas for how best to do real time monitoring of
> broadcast quality of a radio station, I'd love to hear them.  I need
> software that will do that, preferably something that's free, open
> source.  The commercial software I've seen for this is not adequate for
> my purposes, so I'm trying to write my own.  I have a sample script in
> Python that will read a live stream from a radio tuner and output a
> *.wav of whatever length I want, and I wrote Python eight years ago for
> a similar real time application.  I'd prefer to use R, but I don't know
> how to get started.
>
>
> [2] 2018-04-13:
> "https://paulromer.net/jupyter-mathematica-and-the-future-of-the-research-paper".
> This further cites a similar article in The Atlantic from 2018-04-05:
> "www.theatlantic.com/science/archive/2018/04/the-scientific-paper-is-obsolete/556676".
>
> ______________________________________________
> [hidden email] mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.

______________________________________________
[hidden email] mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Reply | Threaded
Open this post in threaded view
|

Re: RMarkdown vignettes v. Jupyter notebooks?

Duncan Murdoch-2
On 11/10/2018 7:18 AM, Ista Zahn wrote:

> Hi Spencer,
>
> On Thu, Oct 11, 2018 at 5:08 AM Spencer Graves
> <[hidden email]> wrote:
>>
>> Hello:
>>
>>
>>         What are the differences between Jupyter notebooks and RMarkdown
>> vignettes?
>
> Here are some of the main differences I'm aware of:
>
> Rmarkdown files include code and prose. The results produced by the
> code do not appear in the Rmarkdown file; instead, the file must be
> processed and typeset to produce a .pdf or .html (etc.) file that
> includes those results. Jupyter notebooks dispense with with
> processing step: output is displayed directly in the notebook. That
> is, a notebook includes code, prose, and results, while an Rmarkdown
> file includes only code and prose.

RStudio can display the output mixed in with the text in the editor.

>
> Rmarkdown allows control over the inclusion of code and results, and
> over how the results are displayed via header arguments. There is no
> such thing in Jupyter notebooks. Controlling the precise appearance of
> a document produced by Jupyter is much more difficult. Going farther,
> one can even say that Jupyter notebooks are designed primarily to be
> read as Jupyter notebooks; exporting to other formats is kind of an
> afterthought. In contrast, Rmarkdown is designed to produce the final
> readable result in another format (.html or .pdf typically).
>
> Rmarkdown is based on markdown, a human readable markup language,
> Jupyter notebooks are based on JSON, a data interchange format common
> on the web. This means that Rmarkdown files can be easily edited using
> any text editor you like. The same is not true of Jupyter notebooks.
> While you can of course edit the JSON directly, the format is designed
> to be written and read by a computer; editing it yourself is not easy.
>
> Rmarkdown is specific to R (I guess there is some basic support in
> knitr for other languages, but in my experience it never worked well)
> while Jupyter notebooks are language agnostic and "kernels" exist for
> a large number of programming languages. However, each Jupyter
> notebook can use only one kernel; you can't easily have R and Python
> code in the same notebook.
>
> Jupyter notebooks typically run in your browser where the actual text
> editing features are somewhat limited. Rmarkdown is typically run in
> an editor such as Emacs or Rstudio where editing and project support
> is much better and greater customization may be possible. You can work
> indirectly with Jupyter notebooks in Emacs
> (https://github.com/millejoh/emacs-ipython-notebook) and perhaps other
> editors as well; this goes some way toward escaping the tyranny of the
> browser but is more fragile and difficult to get working compared to
> Rmarkdown.
>
> Because Jupyter uses a web-based client-server model, it is easy to
> provide live interactive notebooks on your website (see e.g.,
> https://github.com/jupyterhub/binderhub). As far as I know this is not
> currently possible with Rmarkdown.

There are ways to put Shiny apps into Rmarkdown documents; see
<https://beta.rstudioconnect.com/content/2671/Combining-Shiny-R-Markdown.html>.
  Other than my two notes above, your comments about Rmarkdown seem
right on the mark.

Duncan Murdoch

>
>>
>>
>>         I'm trying to do real time monitoring of the broadcast quality of
>> a radio station, and it seems to me that it may be easier to do that in
>> Python than in R.[1]  This led me to a recent post to
>> "[hidden email]" that mentioned "Jupyter, Mathematica, and the
>> Future of the Research Paper"[2] by Paul Romer, who won the 2018 Nobel
>> Memorial Prize in Economics only a few days ago.  In brief, this article
>> suggests that Jupyter notebooks may replace publication in refereed
>> scientific journals as the primary vehicle for sharing scientific
>> research, because they make it so easy for readers to follow both the
>> scientific and computational logic and test their own modifications.
>>
>>
>>         A "Jupyter Notebook Tutorial: The Definitive Guide"[3] suggested
>> I first install Anaconda Navigator.  I got version 1.9.2 of that.  It
>> opens with options for eight different "applications" including
>> JupyterLab 0.34.9, Jupyter Notebook 5.6.0, Spyder 3.3.1 (an IDE for
>> Python), and RStudio 1.1.456.
>>
>>
>>         This leads to several questions:
>>
>>
>>               1.  In general, what experiences have people had with
>> Jupyter Notebooks, Anaconda Navigator, and RMarkdown vignettes in
>> RStudio, and the similarities and differences?  Do you know any
>> references that discuss this?
>
> I've used both extensively, and noted the differences I've discovered above.
>
>>
>>
>>               2.  More specifically, does it make sense to try to use
>> RStudio from within Anaconda Navigator, or is one better off using
>> RStudio as a separate, stand alone application -- or should one even
>> abandon RStudio and run R instead from within a Jupyter Notebook? [I'm
>> new to this topic, so it's possible that this question doesn't even make
>> sense.]
>
> The only advantage I can think of to using Rstudio via Anaconda is
> that you could use conda environments to maintain different versions
> or R and/or R packages for different projects.
>
> You'll have to weigh the pros and cons to decide whether to switch
> from Rstudio to Jupyter notebooks. Depending on what you want to do
> there are both advantages and disadvantages, as discussed above.
>
> Finally, I have to give a plug for a couple of related tools that I
> find very useful.
>
> Emacs org-mode https://orgmode.org/ gives you the best of both worlds:
> notebooks unconstrained by the browser that can include code in
> multiple languages, header arguments, excellent export support, etc.
> It is superior to both Jupyter and Rmarkdown, except that support only
> exists in Emacs.
>
> Jupytext (https://github.com/mwouts/jupytext) is another way to have
> it all, by allowing you to edit in markdown or Rmarkdown, and
> auto-generating a notebook and possibly other formats for you. I've
> only recently started experimenting with it, but so far I like it a
> lot.
>
> Best,
> Ista
>>
>>
>>         Thanks,
>>         Spencer Graves
>>
>>
>> [1] If you have ideas for how best to do real time monitoring of
>> broadcast quality of a radio station, I'd love to hear them.  I need
>> software that will do that, preferably something that's free, open
>> source.  The commercial software I've seen for this is not adequate for
>> my purposes, so I'm trying to write my own.  I have a sample script in
>> Python that will read a live stream from a radio tuner and output a
>> *.wav of whatever length I want, and I wrote Python eight years ago for
>> a similar real time application.  I'd prefer to use R, but I don't know
>> how to get started.
>>
>>
>> [2] 2018-04-13:
>> "https://paulromer.net/jupyter-mathematica-and-the-future-of-the-research-paper".
>> This further cites a similar article in The Atlantic from 2018-04-05:
>> "www.theatlantic.com/science/archive/2018/04/the-scientific-paper-is-obsolete/556676".
>>
>> ______________________________________________
>> [hidden email] mailing list -- To UNSUBSCRIBE and more, see
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
>
> ______________________________________________
> [hidden email] mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>

______________________________________________
[hidden email] mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Reply | Threaded
Open this post in threaded view
|

Re: RMarkdown vignettes v. Jupyter notebooks?

hadley wickham
In reply to this post by Spencer Graves-4
I'd highly recommend Yihui's extensive write up:
https://yihui.name/en/2018/09/notebook-war/

Hadley
On Thu, Oct 11, 2018 at 4:08 AM Spencer Graves
<[hidden email]> wrote:

>
> Hello:
>
>
>        What are the differences between Jupyter notebooks and RMarkdown
> vignettes?
>
>
>        I'm trying to do real time monitoring of the broadcast quality of
> a radio station, and it seems to me that it may be easier to do that in
> Python than in R.[1]  This led me to a recent post to
> "[hidden email]" that mentioned "Jupyter, Mathematica, and the
> Future of the Research Paper"[2] by Paul Romer, who won the 2018 Nobel
> Memorial Prize in Economics only a few days ago.  In brief, this article
> suggests that Jupyter notebooks may replace publication in refereed
> scientific journals as the primary vehicle for sharing scientific
> research, because they make it so easy for readers to follow both the
> scientific and computational logic and test their own modifications.
>
>
>        A "Jupyter Notebook Tutorial: The Definitive Guide"[3] suggested
> I first install Anaconda Navigator.  I got version 1.9.2 of that.  It
> opens with options for eight different "applications" including
> JupyterLab 0.34.9, Jupyter Notebook 5.6.0, Spyder 3.3.1 (an IDE for
> Python), and RStudio 1.1.456.
>
>
>        This leads to several questions:
>
>
>              1.  In general, what experiences have people had with
> Jupyter Notebooks, Anaconda Navigator, and RMarkdown vignettes in
> RStudio, and the similarities and differences?  Do you know any
> references that discuss this?
>
>
>              2.  More specifically, does it make sense to try to use
> RStudio from within Anaconda Navigator, or is one better off using
> RStudio as a separate, stand alone application -- or should one even
> abandon RStudio and run R instead from within a Jupyter Notebook? [I'm
> new to this topic, so it's possible that this question doesn't even make
> sense.]
>
>
>        Thanks,
>        Spencer Graves
>
>
> [1] If you have ideas for how best to do real time monitoring of
> broadcast quality of a radio station, I'd love to hear them.  I need
> software that will do that, preferably something that's free, open
> source.  The commercial software I've seen for this is not adequate for
> my purposes, so I'm trying to write my own.  I have a sample script in
> Python that will read a live stream from a radio tuner and output a
> *.wav of whatever length I want, and I wrote Python eight years ago for
> a similar real time application.  I'd prefer to use R, but I don't know
> how to get started.
>
>
> [2] 2018-04-13:
> "https://paulromer.net/jupyter-mathematica-and-the-future-of-the-research-paper".
> This further cites a similar article in The Atlantic from 2018-04-05:
> "www.theatlantic.com/science/archive/2018/04/the-scientific-paper-is-obsolete/556676".
>
> ______________________________________________
> [hidden email] mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.



--
http://hadley.nz

______________________________________________
[hidden email] mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Reply | Threaded
Open this post in threaded view
|

Re: RMarkdown vignettes v. Jupyter notebooks?

Ista Zahn
In reply to this post by Duncan Murdoch-2
On Thu, Oct 11, 2018 at 8:36 AM Duncan Murdoch <[hidden email]> wrote:

>
> On 11/10/2018 7:18 AM, Ista Zahn wrote:
> > Hi Spencer,
> >
> > On Thu, Oct 11, 2018 at 5:08 AM Spencer Graves
> > <[hidden email]> wrote:
> >>
> >> Hello:
> >>
> >>
> >>         What are the differences between Jupyter notebooks and RMarkdown
> >> vignettes?
> >
> > Here are some of the main differences I'm aware of:
> >
> > Rmarkdown files include code and prose. The results produced by the
> > code do not appear in the Rmarkdown file; instead, the file must be
> > processed and typeset to produce a .pdf or .html (etc.) file that
> > includes those results. Jupyter notebooks dispense with with
> > processing step: output is displayed directly in the notebook. That
> > is, a notebook includes code, prose, and results, while an Rmarkdown
> > file includes only code and prose.
>
> RStudio can display the output mixed in with the text in the editor.

True, but the _file_ does not include the output. Thus it functions
more as a preview, and will not be visible to you if I email you a
.Rmd file. On the other hand, .ipynb files really do contain the
output; if I email one to you and you open it in Jupyter you will see
the output as well.

--Ista

>
> >
> > Rmarkdown allows control over the inclusion of code and results, and
> > over how the results are displayed via header arguments. There is no
> > such thing in Jupyter notebooks. Controlling the precise appearance of
> > a document produced by Jupyter is much more difficult. Going farther,
> > one can even say that Jupyter notebooks are designed primarily to be
> > read as Jupyter notebooks; exporting to other formats is kind of an
> > afterthought. In contrast, Rmarkdown is designed to produce the final
> > readable result in another format (.html or .pdf typically).
> >
> > Rmarkdown is based on markdown, a human readable markup language,
> > Jupyter notebooks are based on JSON, a data interchange format common
> > on the web. This means that Rmarkdown files can be easily edited using
> > any text editor you like. The same is not true of Jupyter notebooks.
> > While you can of course edit the JSON directly, the format is designed
> > to be written and read by a computer; editing it yourself is not easy.
> >
> > Rmarkdown is specific to R (I guess there is some basic support in
> > knitr for other languages, but in my experience it never worked well)
> > while Jupyter notebooks are language agnostic and "kernels" exist for
> > a large number of programming languages. However, each Jupyter
> > notebook can use only one kernel; you can't easily have R and Python
> > code in the same notebook.
> >
> > Jupyter notebooks typically run in your browser where the actual text
> > editing features are somewhat limited. Rmarkdown is typically run in
> > an editor such as Emacs or Rstudio where editing and project support
> > is much better and greater customization may be possible. You can work
> > indirectly with Jupyter notebooks in Emacs
> > (https://github.com/millejoh/emacs-ipython-notebook) and perhaps other
> > editors as well; this goes some way toward escaping the tyranny of the
> > browser but is more fragile and difficult to get working compared to
> > Rmarkdown.
> >
> > Because Jupyter uses a web-based client-server model, it is easy to
> > provide live interactive notebooks on your website (see e.g.,
> > https://github.com/jupyterhub/binderhub). As far as I know this is not
> > currently possible with Rmarkdown.
>
> There are ways to put Shiny apps into Rmarkdown documents; see
> <https://beta.rstudioconnect.com/content/2671/Combining-Shiny-R-Markdown.html>.
>   Other than my two notes above, your comments about Rmarkdown seem
> right on the mark.
>
> Duncan Murdoch
>
> >
> >>
> >>
> >>         I'm trying to do real time monitoring of the broadcast quality of
> >> a radio station, and it seems to me that it may be easier to do that in
> >> Python than in R.[1]  This led me to a recent post to
> >> "[hidden email]" that mentioned "Jupyter, Mathematica, and the
> >> Future of the Research Paper"[2] by Paul Romer, who won the 2018 Nobel
> >> Memorial Prize in Economics only a few days ago.  In brief, this article
> >> suggests that Jupyter notebooks may replace publication in refereed
> >> scientific journals as the primary vehicle for sharing scientific
> >> research, because they make it so easy for readers to follow both the
> >> scientific and computational logic and test their own modifications.
> >>
> >>
> >>         A "Jupyter Notebook Tutorial: The Definitive Guide"[3] suggested
> >> I first install Anaconda Navigator.  I got version 1.9.2 of that.  It
> >> opens with options for eight different "applications" including
> >> JupyterLab 0.34.9, Jupyter Notebook 5.6.0, Spyder 3.3.1 (an IDE for
> >> Python), and RStudio 1.1.456.
> >>
> >>
> >>         This leads to several questions:
> >>
> >>
> >>               1.  In general, what experiences have people had with
> >> Jupyter Notebooks, Anaconda Navigator, and RMarkdown vignettes in
> >> RStudio, and the similarities and differences?  Do you know any
> >> references that discuss this?
> >
> > I've used both extensively, and noted the differences I've discovered above.
> >
> >>
> >>
> >>               2.  More specifically, does it make sense to try to use
> >> RStudio from within Anaconda Navigator, or is one better off using
> >> RStudio as a separate, stand alone application -- or should one even
> >> abandon RStudio and run R instead from within a Jupyter Notebook? [I'm
> >> new to this topic, so it's possible that this question doesn't even make
> >> sense.]
> >
> > The only advantage I can think of to using Rstudio via Anaconda is
> > that you could use conda environments to maintain different versions
> > or R and/or R packages for different projects.
> >
> > You'll have to weigh the pros and cons to decide whether to switch
> > from Rstudio to Jupyter notebooks. Depending on what you want to do
> > there are both advantages and disadvantages, as discussed above.
> >
> > Finally, I have to give a plug for a couple of related tools that I
> > find very useful.
> >
> > Emacs org-mode https://orgmode.org/ gives you the best of both worlds:
> > notebooks unconstrained by the browser that can include code in
> > multiple languages, header arguments, excellent export support, etc.
> > It is superior to both Jupyter and Rmarkdown, except that support only
> > exists in Emacs.
> >
> > Jupytext (https://github.com/mwouts/jupytext) is another way to have
> > it all, by allowing you to edit in markdown or Rmarkdown, and
> > auto-generating a notebook and possibly other formats for you. I've
> > only recently started experimenting with it, but so far I like it a
> > lot.
> >
> > Best,
> > Ista
> >>
> >>
> >>         Thanks,
> >>         Spencer Graves
> >>
> >>
> >> [1] If you have ideas for how best to do real time monitoring of
> >> broadcast quality of a radio station, I'd love to hear them.  I need
> >> software that will do that, preferably something that's free, open
> >> source.  The commercial software I've seen for this is not adequate for
> >> my purposes, so I'm trying to write my own.  I have a sample script in
> >> Python that will read a live stream from a radio tuner and output a
> >> *.wav of whatever length I want, and I wrote Python eight years ago for
> >> a similar real time application.  I'd prefer to use R, but I don't know
> >> how to get started.
> >>
> >>
> >> [2] 2018-04-13:
> >> "https://paulromer.net/jupyter-mathematica-and-the-future-of-the-research-paper".
> >> This further cites a similar article in The Atlantic from 2018-04-05:
> >> "www.theatlantic.com/science/archive/2018/04/the-scientific-paper-is-obsolete/556676".
> >>
> >> ______________________________________________
> >> [hidden email] mailing list -- To UNSUBSCRIBE and more, see
> >> https://stat.ethz.ch/mailman/listinfo/r-help
> >> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> >> and provide commented, minimal, self-contained, reproducible code.
> >
> > ______________________________________________
> > [hidden email] mailing list -- To UNSUBSCRIBE and more, see
> > https://stat.ethz.ch/mailman/listinfo/r-help
> > PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> > and provide commented, minimal, self-contained, reproducible code.
> >
>

______________________________________________
[hidden email] mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Reply | Threaded
Open this post in threaded view
|

Re: RMarkdown vignettes v. Jupyter notebooks?

Jeff Newmiller
Ista, you do not seem to be aware of the
.nb.html format, which is way easier to share with a non-uswr than an ipynb file yet allows the same in-progress kinds of results to be shared and the source can be extracted easily using a web browser (no server needed).

There is some controversy about this whole notebook approach [1] but I think deciding whether it is right for your purposes is highly subjective.

FWIW It took me years to figure out how to even open a Jupyter notebook, so the idea that they should be the gold standard for sharing results seems absurd to me.

[1] https://yihui.name/en/2018/09/notebook-war/

On October 11, 2018 5:53:29 AM PDT, Ista Zahn <[hidden email]> wrote:

>On Thu, Oct 11, 2018 at 8:36 AM Duncan Murdoch
><[hidden email]> wrote:
>>
>> On 11/10/2018 7:18 AM, Ista Zahn wrote:
>> > Hi Spencer,
>> >
>> > On Thu, Oct 11, 2018 at 5:08 AM Spencer Graves
>> > <[hidden email]> wrote:
>> >>
>> >> Hello:
>> >>
>> >>
>> >>         What are the differences between Jupyter notebooks and
>RMarkdown
>> >> vignettes?
>> >
>> > Here are some of the main differences I'm aware of:
>> >
>> > Rmarkdown files include code and prose. The results produced by the
>> > code do not appear in the Rmarkdown file; instead, the file must be
>> > processed and typeset to produce a .pdf or .html (etc.) file that
>> > includes those results. Jupyter notebooks dispense with with
>> > processing step: output is displayed directly in the notebook. That
>> > is, a notebook includes code, prose, and results, while an
>Rmarkdown
>> > file includes only code and prose.
>>
>> RStudio can display the output mixed in with the text in the editor.
>
>True, but the _file_ does not include the output. Thus it functions
>more as a preview, and will not be visible to you if I email you a
>.Rmd file. On the other hand, .ipynb files really do contain the
>output; if I email one to you and you open it in Jupyter you will see
>the output as well.
>
>--Ista
>
>>
>> >
>> > Rmarkdown allows control over the inclusion of code and results,
>and
>> > over how the results are displayed via header arguments. There is
>no
>> > such thing in Jupyter notebooks. Controlling the precise appearance
>of
>> > a document produced by Jupyter is much more difficult. Going
>farther,
>> > one can even say that Jupyter notebooks are designed primarily to
>be
>> > read as Jupyter notebooks; exporting to other formats is kind of an
>> > afterthought. In contrast, Rmarkdown is designed to produce the
>final
>> > readable result in another format (.html or .pdf typically).
>> >
>> > Rmarkdown is based on markdown, a human readable markup language,
>> > Jupyter notebooks are based on JSON, a data interchange format
>common
>> > on the web. This means that Rmarkdown files can be easily edited
>using
>> > any text editor you like. The same is not true of Jupyter
>notebooks.
>> > While you can of course edit the JSON directly, the format is
>designed
>> > to be written and read by a computer; editing it yourself is not
>easy.
>> >
>> > Rmarkdown is specific to R (I guess there is some basic support in
>> > knitr for other languages, but in my experience it never worked
>well)
>> > while Jupyter notebooks are language agnostic and "kernels" exist
>for
>> > a large number of programming languages. However, each Jupyter
>> > notebook can use only one kernel; you can't easily have R and
>Python
>> > code in the same notebook.
>> >
>> > Jupyter notebooks typically run in your browser where the actual
>text
>> > editing features are somewhat limited. Rmarkdown is typically run
>in
>> > an editor such as Emacs or Rstudio where editing and project
>support
>> > is much better and greater customization may be possible. You can
>work
>> > indirectly with Jupyter notebooks in Emacs
>> > (https://github.com/millejoh/emacs-ipython-notebook) and perhaps
>other
>> > editors as well; this goes some way toward escaping the tyranny of
>the
>> > browser but is more fragile and difficult to get working compared
>to
>> > Rmarkdown.
>> >
>> > Because Jupyter uses a web-based client-server model, it is easy to
>> > provide live interactive notebooks on your website (see e.g.,
>> > https://github.com/jupyterhub/binderhub). As far as I know this is
>not
>> > currently possible with Rmarkdown.
>>
>> There are ways to put Shiny apps into Rmarkdown documents; see
>>
><https://beta.rstudioconnect.com/content/2671/Combining-Shiny-R-Markdown.html>.
>>   Other than my two notes above, your comments about Rmarkdown seem
>> right on the mark.
>>
>> Duncan Murdoch
>>
>> >
>> >>
>> >>
>> >>         I'm trying to do real time monitoring of the broadcast
>quality of
>> >> a radio station, and it seems to me that it may be easier to do
>that in
>> >> Python than in R.[1]  This led me to a recent post to
>> >> "[hidden email]" that mentioned "Jupyter, Mathematica, and
>the
>> >> Future of the Research Paper"[2] by Paul Romer, who won the 2018
>Nobel
>> >> Memorial Prize in Economics only a few days ago.  In brief, this
>article
>> >> suggests that Jupyter notebooks may replace publication in
>refereed
>> >> scientific journals as the primary vehicle for sharing scientific
>> >> research, because they make it so easy for readers to follow both
>the
>> >> scientific and computational logic and test their own
>modifications.
>> >>
>> >>
>> >>         A "Jupyter Notebook Tutorial: The Definitive Guide"[3]
>suggested
>> >> I first install Anaconda Navigator.  I got version 1.9.2 of that.
>It
>> >> opens with options for eight different "applications" including
>> >> JupyterLab 0.34.9, Jupyter Notebook 5.6.0, Spyder 3.3.1 (an IDE
>for
>> >> Python), and RStudio 1.1.456.
>> >>
>> >>
>> >>         This leads to several questions:
>> >>
>> >>
>> >>               1.  In general, what experiences have people had
>with
>> >> Jupyter Notebooks, Anaconda Navigator, and RMarkdown vignettes in
>> >> RStudio, and the similarities and differences?  Do you know any
>> >> references that discuss this?
>> >
>> > I've used both extensively, and noted the differences I've
>discovered above.
>> >
>> >>
>> >>
>> >>               2.  More specifically, does it make sense to try to
>use
>> >> RStudio from within Anaconda Navigator, or is one better off using
>> >> RStudio as a separate, stand alone application -- or should one
>even
>> >> abandon RStudio and run R instead from within a Jupyter Notebook?
>[I'm
>> >> new to this topic, so it's possible that this question doesn't
>even make
>> >> sense.]
>> >
>> > The only advantage I can think of to using Rstudio via Anaconda is
>> > that you could use conda environments to maintain different
>versions
>> > or R and/or R packages for different projects.
>> >
>> > You'll have to weigh the pros and cons to decide whether to switch
>> > from Rstudio to Jupyter notebooks. Depending on what you want to do
>> > there are both advantages and disadvantages, as discussed above.
>> >
>> > Finally, I have to give a plug for a couple of related tools that I
>> > find very useful.
>> >
>> > Emacs org-mode https://orgmode.org/ gives you the best of both
>worlds:
>> > notebooks unconstrained by the browser that can include code in
>> > multiple languages, header arguments, excellent export support,
>etc.
>> > It is superior to both Jupyter and Rmarkdown, except that support
>only
>> > exists in Emacs.
>> >
>> > Jupytext (https://github.com/mwouts/jupytext) is another way to
>have
>> > it all, by allowing you to edit in markdown or Rmarkdown, and
>> > auto-generating a notebook and possibly other formats for you. I've
>> > only recently started experimenting with it, but so far I like it a
>> > lot.
>> >
>> > Best,
>> > Ista
>> >>
>> >>
>> >>         Thanks,
>> >>         Spencer Graves
>> >>
>> >>
>> >> [1] If you have ideas for how best to do real time monitoring of
>> >> broadcast quality of a radio station, I'd love to hear them.  I
>need
>> >> software that will do that, preferably something that's free, open
>> >> source.  The commercial software I've seen for this is not
>adequate for
>> >> my purposes, so I'm trying to write my own.  I have a sample
>script in
>> >> Python that will read a live stream from a radio tuner and output
>a
>> >> *.wav of whatever length I want, and I wrote Python eight years
>ago for
>> >> a similar real time application.  I'd prefer to use R, but I don't
>know
>> >> how to get started.
>> >>
>> >>
>> >> [2] 2018-04-13:
>> >>
>"https://paulromer.net/jupyter-mathematica-and-the-future-of-the-research-paper".
>> >> This further cites a similar article in The Atlantic from
>2018-04-05:
>> >>
>"www.theatlantic.com/science/archive/2018/04/the-scientific-paper-is-obsolete/556676".
>> >>
>> >> ______________________________________________
>> >> [hidden email] mailing list -- To UNSUBSCRIBE and more, see
>> >> https://stat.ethz.ch/mailman/listinfo/r-help
>> >> PLEASE do read the posting guide
>http://www.R-project.org/posting-guide.html
>> >> and provide commented, minimal, self-contained, reproducible code.
>> >
>> > ______________________________________________
>> > [hidden email] mailing list -- To UNSUBSCRIBE and more, see
>> > https://stat.ethz.ch/mailman/listinfo/r-help
>> > PLEASE do read the posting guide
>http://www.R-project.org/posting-guide.html
>> > and provide commented, minimal, self-contained, reproducible code.
>> >
>>
>
>______________________________________________
>[hidden email] mailing list -- To UNSUBSCRIBE and more, see
>https://stat.ethz.ch/mailman/listinfo/r-help
>PLEASE do read the posting guide
>http://www.R-project.org/posting-guide.html
>and provide commented, minimal, self-contained, reproducible code.

--
Sent from my phone. Please excuse my brevity.

______________________________________________
[hidden email] mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Reply | Threaded
Open this post in threaded view
|

Re: RMarkdown vignettes v. Jupyter notebooks?

Ista Zahn
On Thu, Oct 11, 2018 at 10:03 AM Jeff Newmiller
<[hidden email]> wrote:
>
> Ista, you do not seem to be aware of the
> .nb.html format, which is way easier to share with a non-uswr than an ipynb file yet allows the same in-progress kinds of results to be shared and the source can be extracted easily using a web browser (no server needed).

Yes, I am aware that notebooks can be exported / converted to other
formats, including .html and .pdf. My point is about emphasis:
Rmarkdown gives you header arguments and other tools that allow you a
great deal of control over how the final .html or .pdf file looks. The
system seems designed to produce .html or .pdf as the final output
format. Jupyter notebooks on the other hand seem primarily designed to
be viewed as Jupyter notebooks: they don't give you a log of tools for
controlling how the converted / exported notebook appears. That's not
so say there is not conversion / export possible of course...

--Ista

>
> There is some controversy about this whole notebook approach [1] but I think deciding whether it is right for your purposes is highly subjective.
>
> FWIW It took me years to figure out how to even open a Jupyter notebook, so the idea that they should be the gold standard for sharing results seems absurd to me.
>
> [1] https://yihui.name/en/2018/09/notebook-war/
>
> On October 11, 2018 5:53:29 AM PDT, Ista Zahn <[hidden email]> wrote:
> >On Thu, Oct 11, 2018 at 8:36 AM Duncan Murdoch
> ><[hidden email]> wrote:
> >>
> >> On 11/10/2018 7:18 AM, Ista Zahn wrote:
> >> > Hi Spencer,
> >> >
> >> > On Thu, Oct 11, 2018 at 5:08 AM Spencer Graves
> >> > <[hidden email]> wrote:
> >> >>
> >> >> Hello:
> >> >>
> >> >>
> >> >>         What are the differences between Jupyter notebooks and
> >RMarkdown
> >> >> vignettes?
> >> >
> >> > Here are some of the main differences I'm aware of:
> >> >
> >> > Rmarkdown files include code and prose. The results produced by the
> >> > code do not appear in the Rmarkdown file; instead, the file must be
> >> > processed and typeset to produce a .pdf or .html (etc.) file that
> >> > includes those results. Jupyter notebooks dispense with with
> >> > processing step: output is displayed directly in the notebook. That
> >> > is, a notebook includes code, prose, and results, while an
> >Rmarkdown
> >> > file includes only code and prose.
> >>
> >> RStudio can display the output mixed in with the text in the editor.
> >
> >True, but the _file_ does not include the output. Thus it functions
> >more as a preview, and will not be visible to you if I email you a
> >.Rmd file. On the other hand, .ipynb files really do contain the
> >output; if I email one to you and you open it in Jupyter you will see
> >the output as well.
> >
> >--Ista
> >
> >>
> >> >
> >> > Rmarkdown allows control over the inclusion of code and results,
> >and
> >> > over how the results are displayed via header arguments. There is
> >no
> >> > such thing in Jupyter notebooks. Controlling the precise appearance
> >of
> >> > a document produced by Jupyter is much more difficult. Going
> >farther,
> >> > one can even say that Jupyter notebooks are designed primarily to
> >be
> >> > read as Jupyter notebooks; exporting to other formats is kind of an
> >> > afterthought. In contrast, Rmarkdown is designed to produce the
> >final
> >> > readable result in another format (.html or .pdf typically).
> >> >
> >> > Rmarkdown is based on markdown, a human readable markup language,
> >> > Jupyter notebooks are based on JSON, a data interchange format
> >common
> >> > on the web. This means that Rmarkdown files can be easily edited
> >using
> >> > any text editor you like. The same is not true of Jupyter
> >notebooks.
> >> > While you can of course edit the JSON directly, the format is
> >designed
> >> > to be written and read by a computer; editing it yourself is not
> >easy.
> >> >
> >> > Rmarkdown is specific to R (I guess there is some basic support in
> >> > knitr for other languages, but in my experience it never worked
> >well)
> >> > while Jupyter notebooks are language agnostic and "kernels" exist
> >for
> >> > a large number of programming languages. However, each Jupyter
> >> > notebook can use only one kernel; you can't easily have R and
> >Python
> >> > code in the same notebook.
> >> >
> >> > Jupyter notebooks typically run in your browser where the actual
> >text
> >> > editing features are somewhat limited. Rmarkdown is typically run
> >in
> >> > an editor such as Emacs or Rstudio where editing and project
> >support
> >> > is much better and greater customization may be possible. You can
> >work
> >> > indirectly with Jupyter notebooks in Emacs
> >> > (https://github.com/millejoh/emacs-ipython-notebook) and perhaps
> >other
> >> > editors as well; this goes some way toward escaping the tyranny of
> >the
> >> > browser but is more fragile and difficult to get working compared
> >to
> >> > Rmarkdown.
> >> >
> >> > Because Jupyter uses a web-based client-server model, it is easy to
> >> > provide live interactive notebooks on your website (see e.g.,
> >> > https://github.com/jupyterhub/binderhub). As far as I know this is
> >not
> >> > currently possible with Rmarkdown.
> >>
> >> There are ways to put Shiny apps into Rmarkdown documents; see
> >>
> ><https://beta.rstudioconnect.com/content/2671/Combining-Shiny-R-Markdown.html>.
> >>   Other than my two notes above, your comments about Rmarkdown seem
> >> right on the mark.
> >>
> >> Duncan Murdoch
> >>
> >> >
> >> >>
> >> >>
> >> >>         I'm trying to do real time monitoring of the broadcast
> >quality of
> >> >> a radio station, and it seems to me that it may be easier to do
> >that in
> >> >> Python than in R.[1]  This led me to a recent post to
> >> >> "[hidden email]" that mentioned "Jupyter, Mathematica, and
> >the
> >> >> Future of the Research Paper"[2] by Paul Romer, who won the 2018
> >Nobel
> >> >> Memorial Prize in Economics only a few days ago.  In brief, this
> >article
> >> >> suggests that Jupyter notebooks may replace publication in
> >refereed
> >> >> scientific journals as the primary vehicle for sharing scientific
> >> >> research, because they make it so easy for readers to follow both
> >the
> >> >> scientific and computational logic and test their own
> >modifications.
> >> >>
> >> >>
> >> >>         A "Jupyter Notebook Tutorial: The Definitive Guide"[3]
> >suggested
> >> >> I first install Anaconda Navigator.  I got version 1.9.2 of that.
> >It
> >> >> opens with options for eight different "applications" including
> >> >> JupyterLab 0.34.9, Jupyter Notebook 5.6.0, Spyder 3.3.1 (an IDE
> >for
> >> >> Python), and RStudio 1.1.456.
> >> >>
> >> >>
> >> >>         This leads to several questions:
> >> >>
> >> >>
> >> >>               1.  In general, what experiences have people had
> >with
> >> >> Jupyter Notebooks, Anaconda Navigator, and RMarkdown vignettes in
> >> >> RStudio, and the similarities and differences?  Do you know any
> >> >> references that discuss this?
> >> >
> >> > I've used both extensively, and noted the differences I've
> >discovered above.
> >> >
> >> >>
> >> >>
> >> >>               2.  More specifically, does it make sense to try to
> >use
> >> >> RStudio from within Anaconda Navigator, or is one better off using
> >> >> RStudio as a separate, stand alone application -- or should one
> >even
> >> >> abandon RStudio and run R instead from within a Jupyter Notebook?
> >[I'm
> >> >> new to this topic, so it's possible that this question doesn't
> >even make
> >> >> sense.]
> >> >
> >> > The only advantage I can think of to using Rstudio via Anaconda is
> >> > that you could use conda environments to maintain different
> >versions
> >> > or R and/or R packages for different projects.
> >> >
> >> > You'll have to weigh the pros and cons to decide whether to switch
> >> > from Rstudio to Jupyter notebooks. Depending on what you want to do
> >> > there are both advantages and disadvantages, as discussed above.
> >> >
> >> > Finally, I have to give a plug for a couple of related tools that I
> >> > find very useful.
> >> >
> >> > Emacs org-mode https://orgmode.org/ gives you the best of both
> >worlds:
> >> > notebooks unconstrained by the browser that can include code in
> >> > multiple languages, header arguments, excellent export support,
> >etc.
> >> > It is superior to both Jupyter and Rmarkdown, except that support
> >only
> >> > exists in Emacs.
> >> >
> >> > Jupytext (https://github.com/mwouts/jupytext) is another way to
> >have
> >> > it all, by allowing you to edit in markdown or Rmarkdown, and
> >> > auto-generating a notebook and possibly other formats for you. I've
> >> > only recently started experimenting with it, but so far I like it a
> >> > lot.
> >> >
> >> > Best,
> >> > Ista
> >> >>
> >> >>
> >> >>         Thanks,
> >> >>         Spencer Graves
> >> >>
> >> >>
> >> >> [1] If you have ideas for how best to do real time monitoring of
> >> >> broadcast quality of a radio station, I'd love to hear them.  I
> >need
> >> >> software that will do that, preferably something that's free, open
> >> >> source.  The commercial software I've seen for this is not
> >adequate for
> >> >> my purposes, so I'm trying to write my own.  I have a sample
> >script in
> >> >> Python that will read a live stream from a radio tuner and output
> >a
> >> >> *.wav of whatever length I want, and I wrote Python eight years
> >ago for
> >> >> a similar real time application.  I'd prefer to use R, but I don't
> >know
> >> >> how to get started.
> >> >>
> >> >>
> >> >> [2] 2018-04-13:
> >> >>
> >"https://paulromer.net/jupyter-mathematica-and-the-future-of-the-research-paper".
> >> >> This further cites a similar article in The Atlantic from
> >2018-04-05:
> >> >>
> >"www.theatlantic.com/science/archive/2018/04/the-scientific-paper-is-obsolete/556676".
> >> >>
> >> >> ______________________________________________
> >> >> [hidden email] mailing list -- To UNSUBSCRIBE and more, see
> >> >> https://stat.ethz.ch/mailman/listinfo/r-help
> >> >> PLEASE do read the posting guide
> >http://www.R-project.org/posting-guide.html
> >> >> and provide commented, minimal, self-contained, reproducible code.
> >> >
> >> > ______________________________________________
> >> > [hidden email] mailing list -- To UNSUBSCRIBE and more, see
> >> > https://stat.ethz.ch/mailman/listinfo/r-help
> >> > PLEASE do read the posting guide
> >http://www.R-project.org/posting-guide.html
> >> > and provide commented, minimal, self-contained, reproducible code.
> >> >
> >>
> >
> >______________________________________________
> >[hidden email] mailing list -- To UNSUBSCRIBE and more, see
> >https://stat.ethz.ch/mailman/listinfo/r-help
> >PLEASE do read the posting guide
> >http://www.R-project.org/posting-guide.html
> >and provide commented, minimal, self-contained, reproducible code.
>
> --
> Sent from my phone. Please excuse my brevity.

______________________________________________
[hidden email] mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Reply | Threaded
Open this post in threaded view
|

Re: RMarkdown vignettes v. Jupyter notebooks?

Yihui Xie-2
In reply to this post by Ista Zahn
I just have one comment on the multi-language support in R Markdown
(inline below):

On Thu, Oct 11, 2018 at 6:19 AM Ista Zahn <[hidden email]> wrote:

>
> Hi Spencer,
>
> On Thu, Oct 11, 2018 at 5:08 AM Spencer Graves
> <[hidden email]> wrote:
> >
> > Hello:
> >
> >
> >        What are the differences between Jupyter notebooks and RMarkdown
> > vignettes?
>
> Here are some of the main differences I'm aware of:
>
> Rmarkdown files include code and prose. The results produced by the
> code do not appear in the Rmarkdown file; instead, the file must be
> processed and typeset to produce a .pdf or .html (etc.) file that
> includes those results. Jupyter notebooks dispense with with
> processing step: output is displayed directly in the notebook. That
> is, a notebook includes code, prose, and results, while an Rmarkdown
> file includes only code and prose.
>
> Rmarkdown allows control over the inclusion of code and results, and
> over how the results are displayed via header arguments. There is no
> such thing in Jupyter notebooks. Controlling the precise appearance of
> a document produced by Jupyter is much more difficult. Going farther,
> one can even say that Jupyter notebooks are designed primarily to be
> read as Jupyter notebooks; exporting to other formats is kind of an
> afterthought. In contrast, Rmarkdown is designed to produce the final
> readable result in another format (.html or .pdf typically).
>
> Rmarkdown is based on markdown, a human readable markup language,
> Jupyter notebooks are based on JSON, a data interchange format common
> on the web. This means that Rmarkdown files can be easily edited using
> any text editor you like. The same is not true of Jupyter notebooks.
> While you can of course edit the JSON directly, the format is designed
> to be written and read by a computer; editing it yourself is not easy.
>
> Rmarkdown is specific to R (I guess there is some basic support in
> knitr for other languages, but in my experience it never worked well)
> while Jupyter notebooks are language agnostic and "kernels" exist for
> a large number of programming languages. However, each Jupyter
> notebook can use only one kernel; you can't easily have R and Python
> code in the same notebook.

You might want to at least update your impression about the Python
support in R Markdown now :) Last year, with the release of the
reticulate package, the support for Python has been substantially
enhanced in both R Markdown
(https://bookdown.org/yihui/rmarkdown/language-engines.html) and
RStudio (https://blog.rstudio.com/2018/10/09/rstudio-1-2-preview-reticulated-python/).
You can easily have both R and Python code in the same R Markdown
document, and the two worlds can freely talk to each other.

> Jupyter notebooks typically run in your browser where the actual text
> editing features are somewhat limited. Rmarkdown is typically run in
> an editor such as Emacs or Rstudio where editing and project support
> is much better and greater customization may be possible. You can work
> indirectly with Jupyter notebooks in Emacs
> (https://github.com/millejoh/emacs-ipython-notebook) and perhaps other
> editors as well; this goes some way toward escaping the tyranny of the
> browser but is more fragile and difficult to get working compared to
> Rmarkdown.
>
> Because Jupyter uses a web-based client-server model, it is easy to
> provide live interactive notebooks on your website (see e.g.,
> https://github.com/jupyterhub/binderhub). As far as I know this is not
> currently possible with Rmarkdown.
>
> >
> >
> >        I'm trying to do real time monitoring of the broadcast quality of
> > a radio station, and it seems to me that it may be easier to do that in
> > Python than in R.[1]  This led me to a recent post to
> > "[hidden email]" that mentioned "Jupyter, Mathematica, and the
> > Future of the Research Paper"[2] by Paul Romer, who won the 2018 Nobel
> > Memorial Prize in Economics only a few days ago.  In brief, this article
> > suggests that Jupyter notebooks may replace publication in refereed
> > scientific journals as the primary vehicle for sharing scientific
> > research, because they make it so easy for readers to follow both the
> > scientific and computational logic and test their own modifications.
> >
> >
> >        A "Jupyter Notebook Tutorial: The Definitive Guide"[3] suggested
> > I first install Anaconda Navigator.  I got version 1.9.2 of that.  It
> > opens with options for eight different "applications" including
> > JupyterLab 0.34.9, Jupyter Notebook 5.6.0, Spyder 3.3.1 (an IDE for
> > Python), and RStudio 1.1.456.
> >
> >
> >        This leads to several questions:
> >
> >
> >              1.  In general, what experiences have people had with
> > Jupyter Notebooks, Anaconda Navigator, and RMarkdown vignettes in
> > RStudio, and the similarities and differences?  Do you know any
> > references that discuss this?
>
> I've used both extensively, and noted the differences I've discovered above.
>
> >
> >
> >              2.  More specifically, does it make sense to try to use
> > RStudio from within Anaconda Navigator, or is one better off using
> > RStudio as a separate, stand alone application -- or should one even
> > abandon RStudio and run R instead from within a Jupyter Notebook? [I'm
> > new to this topic, so it's possible that this question doesn't even make
> > sense.]
>
> The only advantage I can think of to using Rstudio via Anaconda is
> that you could use conda environments to maintain different versions
> or R and/or R packages for different projects.
>
> You'll have to weigh the pros and cons to decide whether to switch
> from Rstudio to Jupyter notebooks. Depending on what you want to do
> there are both advantages and disadvantages, as discussed above.
>
> Finally, I have to give a plug for a couple of related tools that I
> find very useful.
>
> Emacs org-mode https://orgmode.org/ gives you the best of both worlds:
> notebooks unconstrained by the browser that can include code in
> multiple languages, header arguments, excellent export support, etc.
> It is superior to both Jupyter and Rmarkdown, except that support only
> exists in Emacs.
>
> Jupytext (https://github.com/mwouts/jupytext) is another way to have
> it all, by allowing you to edit in markdown or Rmarkdown, and
> auto-generating a notebook and possibly other formats for you. I've
> only recently started experimenting with it, but so far I like it a
> lot.
>
> Best,
> Ista
> >
> >
> >        Thanks,
> >        Spencer Graves
> >
> >
> > [1] If you have ideas for how best to do real time monitoring of
> > broadcast quality of a radio station, I'd love to hear them.  I need
> > software that will do that, preferably something that's free, open
> > source.  The commercial software I've seen for this is not adequate for
> > my purposes, so I'm trying to write my own.  I have a sample script in
> > Python that will read a live stream from a radio tuner and output a
> > *.wav of whatever length I want, and I wrote Python eight years ago for
> > a similar real time application.  I'd prefer to use R, but I don't know
> > how to get started.
> >
> >
> > [2] 2018-04-13:
> > "https://paulromer.net/jupyter-mathematica-and-the-future-of-the-research-paper".
> > This further cites a similar article in The Atlantic from 2018-04-05:
> > "www.theatlantic.com/science/archive/2018/04/the-scientific-paper-is-obsolete/556676".

______________________________________________
[hidden email] mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Reply | Threaded
Open this post in threaded view
|

Re: RMarkdown vignettes v. Jupyter notebooks?

Ista Zahn
On Thu, Oct 11, 2018 at 10:15 AM Yihui Xie <[hidden email]> wrote:

>
> I just have one comment on the multi-language support in R Markdown
> (inline below):
>
> On Thu, Oct 11, 2018 at 6:19 AM Ista Zahn <[hidden email]> wrote:
> >
> > Hi Spencer,
> >
> > On Thu, Oct 11, 2018 at 5:08 AM Spencer Graves
> > <[hidden email]> wrote:
> > >
> > > Hello:
> > >
> > >
> > >        What are the differences between Jupyter notebooks and RMarkdown
> > > vignettes?
> >
> > Here are some of the main differences I'm aware of:
> >

<snip>

> > Rmarkdown is specific to R (I guess there is some basic support in
> > knitr for other languages, but in my experience it never worked well)
> > while Jupyter notebooks are language agnostic and "kernels" exist for
> > a large number of programming languages. However, each Jupyter
> > notebook can use only one kernel; you can't easily have R and Python
> > code in the same notebook.
>
> You might want to at least update your impression about the Python
> support in R Markdown now :) Last year, with the release of the
> reticulate package, the support for Python has been substantially
> enhanced in both R Markdown
> (https://bookdown.org/yihui/rmarkdown/language-engines.html) and
> RStudio (https://blog.rstudio.com/2018/10/09/rstudio-1-2-preview-reticulated-python/).
> You can easily have both R and Python code in the same R Markdown
> document, and the two worlds can freely talk to each other.

Yes, I did miss that development, thank you for that! I haven't spent
much time with it yet, but that looks really great.

--Ista

>
> > Jupyter notebooks typically run in your browser where the actual text
> > editing features are somewhat limited. Rmarkdown is typically run in
> > an editor such as Emacs or Rstudio where editing and project support
> > is much better and greater customization may be possible. You can work
> > indirectly with Jupyter notebooks in Emacs
> > (https://github.com/millejoh/emacs-ipython-notebook) and perhaps other
> > editors as well; this goes some way toward escaping the tyranny of the
> > browser but is more fragile and difficult to get working compared to
> > Rmarkdown.
> >
> > Because Jupyter uses a web-based client-server model, it is easy to
> > provide live interactive notebooks on your website (see e.g.,
> > https://github.com/jupyterhub/binderhub). As far as I know this is not
> > currently possible with Rmarkdown.
> >
> > >
> > >
> > >        I'm trying to do real time monitoring of the broadcast quality of
> > > a radio station, and it seems to me that it may be easier to do that in
> > > Python than in R.[1]  This led me to a recent post to
> > > "[hidden email]" that mentioned "Jupyter, Mathematica, and the
> > > Future of the Research Paper"[2] by Paul Romer, who won the 2018 Nobel
> > > Memorial Prize in Economics only a few days ago.  In brief, this article
> > > suggests that Jupyter notebooks may replace publication in refereed
> > > scientific journals as the primary vehicle for sharing scientific
> > > research, because they make it so easy for readers to follow both the
> > > scientific and computational logic and test their own modifications.
> > >
> > >
> > >        A "Jupyter Notebook Tutorial: The Definitive Guide"[3] suggested
> > > I first install Anaconda Navigator.  I got version 1.9.2 of that.  It
> > > opens with options for eight different "applications" including
> > > JupyterLab 0.34.9, Jupyter Notebook 5.6.0, Spyder 3.3.1 (an IDE for
> > > Python), and RStudio 1.1.456.
> > >
> > >
> > >        This leads to several questions:
> > >
> > >
> > >              1.  In general, what experiences have people had with
> > > Jupyter Notebooks, Anaconda Navigator, and RMarkdown vignettes in
> > > RStudio, and the similarities and differences?  Do you know any
> > > references that discuss this?
> >
> > I've used both extensively, and noted the differences I've discovered above.
> >
> > >
> > >
> > >              2.  More specifically, does it make sense to try to use
> > > RStudio from within Anaconda Navigator, or is one better off using
> > > RStudio as a separate, stand alone application -- or should one even
> > > abandon RStudio and run R instead from within a Jupyter Notebook? [I'm
> > > new to this topic, so it's possible that this question doesn't even make
> > > sense.]
> >
> > The only advantage I can think of to using Rstudio via Anaconda is
> > that you could use conda environments to maintain different versions
> > or R and/or R packages for different projects.
> >
> > You'll have to weigh the pros and cons to decide whether to switch
> > from Rstudio to Jupyter notebooks. Depending on what you want to do
> > there are both advantages and disadvantages, as discussed above.
> >
> > Finally, I have to give a plug for a couple of related tools that I
> > find very useful.
> >
> > Emacs org-mode https://orgmode.org/ gives you the best of both worlds:
> > notebooks unconstrained by the browser that can include code in
> > multiple languages, header arguments, excellent export support, etc.
> > It is superior to both Jupyter and Rmarkdown, except that support only
> > exists in Emacs.
> >
> > Jupytext (https://github.com/mwouts/jupytext) is another way to have
> > it all, by allowing you to edit in markdown or Rmarkdown, and
> > auto-generating a notebook and possibly other formats for you. I've
> > only recently started experimenting with it, but so far I like it a
> > lot.
> >
> > Best,
> > Ista
> > >
> > >
> > >        Thanks,
> > >        Spencer Graves
> > >
> > >
> > > [1] If you have ideas for how best to do real time monitoring of
> > > broadcast quality of a radio station, I'd love to hear them.  I need
> > > software that will do that, preferably something that's free, open
> > > source.  The commercial software I've seen for this is not adequate for
> > > my purposes, so I'm trying to write my own.  I have a sample script in
> > > Python that will read a live stream from a radio tuner and output a
> > > *.wav of whatever length I want, and I wrote Python eight years ago for
> > > a similar real time application.  I'd prefer to use R, but I don't know
> > > how to get started.
> > >
> > >
> > > [2] 2018-04-13:
> > > "https://paulromer.net/jupyter-mathematica-and-the-future-of-the-research-paper".
> > > This further cites a similar article in The Atlantic from 2018-04-05:
> > > "www.theatlantic.com/science/archive/2018/04/the-scientific-paper-is-obsolete/556676".

______________________________________________
[hidden email] mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Reply | Threaded
Open this post in threaded view
|

Re: RMarkdown vignettes v. Jupyter notebooks?

Yihui Xie-2
In reply to this post by Ista Zahn
In case Jeff's point was not clear enough: the *.nb.html file is very
similar to *.ipynb and it is very different with other output formats
that R Markdown generates. A .nb.html file is generated alongside .Rmd
when you preview an R Markdown notebook, and it contains both the R
Markdown source document and its output (in a single file). See
Section 3.2.2 of the R Markdown book for more info:
https://bookdown.org/yihui/rmarkdown/notebook.html

But I think you are correct that R Markdown and Jupyter have different emphasis.

Regards,
Yihui
--
https://yihui.name

On Thu, Oct 11, 2018 at 9:14 AM Ista Zahn <[hidden email]> wrote:

>
> On Thu, Oct 11, 2018 at 10:03 AM Jeff Newmiller
> <[hidden email]> wrote:
> >
> > Ista, you do not seem to be aware of the
> > .nb.html format, which is way easier to share with a non-uswr than an ipynb file yet allows the same in-progress kinds of results to be shared and the source can be extracted easily using a web browser (no server needed).
>
> Yes, I am aware that notebooks can be exported / converted to other
> formats, including .html and .pdf. My point is about emphasis:
> Rmarkdown gives you header arguments and other tools that allow you a
> great deal of control over how the final .html or .pdf file looks. The
> system seems designed to produce .html or .pdf as the final output
> format. Jupyter notebooks on the other hand seem primarily designed to
> be viewed as Jupyter notebooks: they don't give you a log of tools for
> controlling how the converted / exported notebook appears. That's not
> so say there is not conversion / export possible of course...
>
> --Ista
>
> >
> > There is some controversy about this whole notebook approach [1] but I think deciding whether it is right for your purposes is highly subjective.
> >
> > FWIW It took me years to figure out how to even open a Jupyter notebook, so the idea that they should be the gold standard for sharing results seems absurd to me.
> >
> > [1] https://yihui.name/en/2018/09/notebook-war/
> >
> > On October 11, 2018 5:53:29 AM PDT, Ista Zahn <[hidden email]> wrote:
> > >On Thu, Oct 11, 2018 at 8:36 AM Duncan Murdoch
> > ><[hidden email]> wrote:
> > >>
> > >> On 11/10/2018 7:18 AM, Ista Zahn wrote:
> > >> > Hi Spencer,
> > >> >
> > >> > On Thu, Oct 11, 2018 at 5:08 AM Spencer Graves
> > >> > <[hidden email]> wrote:
> > >> >>
> > >> >> Hello:
> > >> >>
> > >> >>
> > >> >>         What are the differences between Jupyter notebooks and
> > >RMarkdown
> > >> >> vignettes?
> > >> >
> > >> > Here are some of the main differences I'm aware of:
> > >> >
> > >> > Rmarkdown files include code and prose. The results produced by the
> > >> > code do not appear in the Rmarkdown file; instead, the file must be
> > >> > processed and typeset to produce a .pdf or .html (etc.) file that
> > >> > includes those results. Jupyter notebooks dispense with with
> > >> > processing step: output is displayed directly in the notebook. That
> > >> > is, a notebook includes code, prose, and results, while an
> > >Rmarkdown
> > >> > file includes only code and prose.
> > >>
> > >> RStudio can display the output mixed in with the text in the editor.
> > >
> > >True, but the _file_ does not include the output. Thus it functions
> > >more as a preview, and will not be visible to you if I email you a
> > >.Rmd file. On the other hand, .ipynb files really do contain the
> > >output; if I email one to you and you open it in Jupyter you will see
> > >the output as well.
> > >
> > >--Ista
> > >
> > >>
> > >> >
> > >> > Rmarkdown allows control over the inclusion of code and results,
> > >and
> > >> > over how the results are displayed via header arguments. There is
> > >no
> > >> > such thing in Jupyter notebooks. Controlling the precise appearance
> > >of
> > >> > a document produced by Jupyter is much more difficult. Going
> > >farther,
> > >> > one can even say that Jupyter notebooks are designed primarily to
> > >be
> > >> > read as Jupyter notebooks; exporting to other formats is kind of an
> > >> > afterthought. In contrast, Rmarkdown is designed to produce the
> > >final
> > >> > readable result in another format (.html or .pdf typically).
> > >> >
> > >> > Rmarkdown is based on markdown, a human readable markup language,
> > >> > Jupyter notebooks are based on JSON, a data interchange format
> > >common
> > >> > on the web. This means that Rmarkdown files can be easily edited
> > >using
> > >> > any text editor you like. The same is not true of Jupyter
> > >notebooks.
> > >> > While you can of course edit the JSON directly, the format is
> > >designed
> > >> > to be written and read by a computer; editing it yourself is not
> > >easy.
> > >> >
> > >> > Rmarkdown is specific to R (I guess there is some basic support in
> > >> > knitr for other languages, but in my experience it never worked
> > >well)
> > >> > while Jupyter notebooks are language agnostic and "kernels" exist
> > >for
> > >> > a large number of programming languages. However, each Jupyter
> > >> > notebook can use only one kernel; you can't easily have R and
> > >Python
> > >> > code in the same notebook.
> > >> >
> > >> > Jupyter notebooks typically run in your browser where the actual
> > >text
> > >> > editing features are somewhat limited. Rmarkdown is typically run
> > >in
> > >> > an editor such as Emacs or Rstudio where editing and project
> > >support
> > >> > is much better and greater customization may be possible. You can
> > >work
> > >> > indirectly with Jupyter notebooks in Emacs
> > >> > (https://github.com/millejoh/emacs-ipython-notebook) and perhaps
> > >other
> > >> > editors as well; this goes some way toward escaping the tyranny of
> > >the
> > >> > browser but is more fragile and difficult to get working compared
> > >to
> > >> > Rmarkdown.
> > >> >
> > >> > Because Jupyter uses a web-based client-server model, it is easy to
> > >> > provide live interactive notebooks on your website (see e.g.,
> > >> > https://github.com/jupyterhub/binderhub). As far as I know this is
> > >not
> > >> > currently possible with Rmarkdown.
> > >>
> > >> There are ways to put Shiny apps into Rmarkdown documents; see
> > >>
> > ><https://beta.rstudioconnect.com/content/2671/Combining-Shiny-R-Markdown.html>.
> > >>   Other than my two notes above, your comments about Rmarkdown seem
> > >> right on the mark.
> > >>
> > >> Duncan Murdoch
> > >>
> > >> >
> > >> >>
> > >> >>
> > >> >>         I'm trying to do real time monitoring of the broadcast
> > >quality of
> > >> >> a radio station, and it seems to me that it may be easier to do
> > >that in
> > >> >> Python than in R.[1]  This led me to a recent post to
> > >> >> "[hidden email]" that mentioned "Jupyter, Mathematica, and
> > >the
> > >> >> Future of the Research Paper"[2] by Paul Romer, who won the 2018
> > >Nobel
> > >> >> Memorial Prize in Economics only a few days ago.  In brief, this
> > >article
> > >> >> suggests that Jupyter notebooks may replace publication in
> > >refereed
> > >> >> scientific journals as the primary vehicle for sharing scientific
> > >> >> research, because they make it so easy for readers to follow both
> > >the
> > >> >> scientific and computational logic and test their own
> > >modifications.
> > >> >>
> > >> >>
> > >> >>         A "Jupyter Notebook Tutorial: The Definitive Guide"[3]
> > >suggested
> > >> >> I first install Anaconda Navigator.  I got version 1.9.2 of that.
> > >It
> > >> >> opens with options for eight different "applications" including
> > >> >> JupyterLab 0.34.9, Jupyter Notebook 5.6.0, Spyder 3.3.1 (an IDE
> > >for
> > >> >> Python), and RStudio 1.1.456.
> > >> >>
> > >> >>
> > >> >>         This leads to several questions:
> > >> >>
> > >> >>
> > >> >>               1.  In general, what experiences have people had
> > >with
> > >> >> Jupyter Notebooks, Anaconda Navigator, and RMarkdown vignettes in
> > >> >> RStudio, and the similarities and differences?  Do you know any
> > >> >> references that discuss this?
> > >> >
> > >> > I've used both extensively, and noted the differences I've
> > >discovered above.
> > >> >
> > >> >>
> > >> >>
> > >> >>               2.  More specifically, does it make sense to try to
> > >use
> > >> >> RStudio from within Anaconda Navigator, or is one better off using
> > >> >> RStudio as a separate, stand alone application -- or should one
> > >even
> > >> >> abandon RStudio and run R instead from within a Jupyter Notebook?
> > >[I'm
> > >> >> new to this topic, so it's possible that this question doesn't
> > >even make
> > >> >> sense.]
> > >> >
> > >> > The only advantage I can think of to using Rstudio via Anaconda is
> > >> > that you could use conda environments to maintain different
> > >versions
> > >> > or R and/or R packages for different projects.
> > >> >
> > >> > You'll have to weigh the pros and cons to decide whether to switch
> > >> > from Rstudio to Jupyter notebooks. Depending on what you want to do
> > >> > there are both advantages and disadvantages, as discussed above.
> > >> >
> > >> > Finally, I have to give a plug for a couple of related tools that I
> > >> > find very useful.
> > >> >
> > >> > Emacs org-mode https://orgmode.org/ gives you the best of both
> > >worlds:
> > >> > notebooks unconstrained by the browser that can include code in
> > >> > multiple languages, header arguments, excellent export support,
> > >etc.
> > >> > It is superior to both Jupyter and Rmarkdown, except that support
> > >only
> > >> > exists in Emacs.
> > >> >
> > >> > Jupytext (https://github.com/mwouts/jupytext) is another way to
> > >have
> > >> > it all, by allowing you to edit in markdown or Rmarkdown, and
> > >> > auto-generating a notebook and possibly other formats for you. I've
> > >> > only recently started experimenting with it, but so far I like it a
> > >> > lot.
> > >> >
> > >> > Best,
> > >> > Ista
> > >> >>
> > >> >>
> > >> >>         Thanks,
> > >> >>         Spencer Graves
> > >> >>
> > >> >>
> > >> >> [1] If you have ideas for how best to do real time monitoring of
> > >> >> broadcast quality of a radio station, I'd love to hear them.  I
> > >need
> > >> >> software that will do that, preferably something that's free, open
> > >> >> source.  The commercial software I've seen for this is not
> > >adequate for
> > >> >> my purposes, so I'm trying to write my own.  I have a sample
> > >script in
> > >> >> Python that will read a live stream from a radio tuner and output
> > >a
> > >> >> *.wav of whatever length I want, and I wrote Python eight years
> > >ago for
> > >> >> a similar real time application.  I'd prefer to use R, but I don't
> > >know
> > >> >> how to get started.
> > >> >>
> > >> >>
> > >> >> [2] 2018-04-13:
> > >> >>
> > >"https://paulromer.net/jupyter-mathematica-and-the-future-of-the-research-paper".
> > >> >> This further cites a similar article in The Atlantic from
> > >2018-04-05:
> > >> >>
> > >"www.theatlantic.com/science/archive/2018/04/the-scientific-paper-is-obsolete/556676".
> > >> >>
> > >> >> ______________________________________________
> > >> >> [hidden email] mailing list -- To UNSUBSCRIBE and more, see
> > >> >> https://stat.ethz.ch/mailman/listinfo/r-help
> > >> >> PLEASE do read the posting guide
> > >http://www.R-project.org/posting-guide.html
> > >> >> and provide commented, minimal, self-contained, reproducible code.
> > >> >
> > >> > ______________________________________________
> > >> > [hidden email] mailing list -- To UNSUBSCRIBE and more, see
> > >> > https://stat.ethz.ch/mailman/listinfo/r-help
> > >> > PLEASE do read the posting guide
> > >http://www.R-project.org/posting-guide.html
> > >> > and provide commented, minimal, self-contained, reproducible code.
> > >> >
> > >>
> > >
> > >______________________________________________
> > >[hidden email] mailing list -- To UNSUBSCRIBE and more, see
> > >https://stat.ethz.ch/mailman/listinfo/r-help
> > >PLEASE do read the posting guide
> > >http://www.R-project.org/posting-guide.html
> > >and provide commented, minimal, self-contained, reproducible code.
> >
> > --
> > Sent from my phone. Please excuse my brevity.
>
> ______________________________________________
> [hidden email] mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.

______________________________________________
[hidden email] mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Reply | Threaded
Open this post in threaded view
|

Re: RMarkdown vignettes v. Jupyter notebooks?

Ista Zahn
On Thu, Oct 11, 2018 at 10:23 AM Yihui Xie <[hidden email]> wrote:
>
> In case Jeff's point was not clear enough: the *.nb.html file is very
> similar to *.ipynb and it is very different with other output formats
> that R Markdown generates. A .nb.html file is generated alongside .Rmd
> when you preview an R Markdown notebook, and it contains both the R
> Markdown source document and its output (in a single file). See
> Section 3.2.2 of the R Markdown book for more info:
> https://bookdown.org/yihui/rmarkdown/notebook.html

Thank you Yihui, you have once again rescued me from a state of
ignorance. Much appreciated.

--Ista

>
> But I think you are correct that R Markdown and Jupyter have different emphasis.
>
> Regards,
> Yihui
> --
> https://yihui.name
>
> On Thu, Oct 11, 2018 at 9:14 AM Ista Zahn <[hidden email]> wrote:
> >
> > On Thu, Oct 11, 2018 at 10:03 AM Jeff Newmiller
> > <[hidden email]> wrote:
> > >
> > > Ista, you do not seem to be aware of the
> > > .nb.html format, which is way easier to share with a non-uswr than an ipynb file yet allows the same in-progress kinds of results to be shared and the source can be extracted easily using a web browser (no server needed).
> >
> > Yes, I am aware that notebooks can be exported / converted to other
> > formats, including .html and .pdf. My point is about emphasis:
> > Rmarkdown gives you header arguments and other tools that allow you a
> > great deal of control over how the final .html or .pdf file looks. The
> > system seems designed to produce .html or .pdf as the final output
> > format. Jupyter notebooks on the other hand seem primarily designed to
> > be viewed as Jupyter notebooks: they don't give you a log of tools for
> > controlling how the converted / exported notebook appears. That's not
> > so say there is not conversion / export possible of course...
> >
> > --Ista
> >
> > >
> > > There is some controversy about this whole notebook approach [1] but I think deciding whether it is right for your purposes is highly subjective.
> > >
> > > FWIW It took me years to figure out how to even open a Jupyter notebook, so the idea that they should be the gold standard for sharing results seems absurd to me.
> > >
> > > [1] https://yihui.name/en/2018/09/notebook-war/
> > >
> > > On October 11, 2018 5:53:29 AM PDT, Ista Zahn <[hidden email]> wrote:
> > > >On Thu, Oct 11, 2018 at 8:36 AM Duncan Murdoch
> > > ><[hidden email]> wrote:
> > > >>
> > > >> On 11/10/2018 7:18 AM, Ista Zahn wrote:
> > > >> > Hi Spencer,
> > > >> >
> > > >> > On Thu, Oct 11, 2018 at 5:08 AM Spencer Graves
> > > >> > <[hidden email]> wrote:
> > > >> >>
> > > >> >> Hello:
> > > >> >>
> > > >> >>
> > > >> >>         What are the differences between Jupyter notebooks and
> > > >RMarkdown
> > > >> >> vignettes?
> > > >> >
> > > >> > Here are some of the main differences I'm aware of:
> > > >> >
> > > >> > Rmarkdown files include code and prose. The results produced by the
> > > >> > code do not appear in the Rmarkdown file; instead, the file must be
> > > >> > processed and typeset to produce a .pdf or .html (etc.) file that
> > > >> > includes those results. Jupyter notebooks dispense with with
> > > >> > processing step: output is displayed directly in the notebook. That
> > > >> > is, a notebook includes code, prose, and results, while an
> > > >Rmarkdown
> > > >> > file includes only code and prose.
> > > >>
> > > >> RStudio can display the output mixed in with the text in the editor.
> > > >
> > > >True, but the _file_ does not include the output. Thus it functions
> > > >more as a preview, and will not be visible to you if I email you a
> > > >.Rmd file. On the other hand, .ipynb files really do contain the
> > > >output; if I email one to you and you open it in Jupyter you will see
> > > >the output as well.
> > > >
> > > >--Ista
> > > >
> > > >>
> > > >> >
> > > >> > Rmarkdown allows control over the inclusion of code and results,
> > > >and
> > > >> > over how the results are displayed via header arguments. There is
> > > >no
> > > >> > such thing in Jupyter notebooks. Controlling the precise appearance
> > > >of
> > > >> > a document produced by Jupyter is much more difficult. Going
> > > >farther,
> > > >> > one can even say that Jupyter notebooks are designed primarily to
> > > >be
> > > >> > read as Jupyter notebooks; exporting to other formats is kind of an
> > > >> > afterthought. In contrast, Rmarkdown is designed to produce the
> > > >final
> > > >> > readable result in another format (.html or .pdf typically).
> > > >> >
> > > >> > Rmarkdown is based on markdown, a human readable markup language,
> > > >> > Jupyter notebooks are based on JSON, a data interchange format
> > > >common
> > > >> > on the web. This means that Rmarkdown files can be easily edited
> > > >using
> > > >> > any text editor you like. The same is not true of Jupyter
> > > >notebooks.
> > > >> > While you can of course edit the JSON directly, the format is
> > > >designed
> > > >> > to be written and read by a computer; editing it yourself is not
> > > >easy.
> > > >> >
> > > >> > Rmarkdown is specific to R (I guess there is some basic support in
> > > >> > knitr for other languages, but in my experience it never worked
> > > >well)
> > > >> > while Jupyter notebooks are language agnostic and "kernels" exist
> > > >for
> > > >> > a large number of programming languages. However, each Jupyter
> > > >> > notebook can use only one kernel; you can't easily have R and
> > > >Python
> > > >> > code in the same notebook.
> > > >> >
> > > >> > Jupyter notebooks typically run in your browser where the actual
> > > >text
> > > >> > editing features are somewhat limited. Rmarkdown is typically run
> > > >in
> > > >> > an editor such as Emacs or Rstudio where editing and project
> > > >support
> > > >> > is much better and greater customization may be possible. You can
> > > >work
> > > >> > indirectly with Jupyter notebooks in Emacs
> > > >> > (https://github.com/millejoh/emacs-ipython-notebook) and perhaps
> > > >other
> > > >> > editors as well; this goes some way toward escaping the tyranny of
> > > >the
> > > >> > browser but is more fragile and difficult to get working compared
> > > >to
> > > >> > Rmarkdown.
> > > >> >
> > > >> > Because Jupyter uses a web-based client-server model, it is easy to
> > > >> > provide live interactive notebooks on your website (see e.g.,
> > > >> > https://github.com/jupyterhub/binderhub). As far as I know this is
> > > >not
> > > >> > currently possible with Rmarkdown.
> > > >>
> > > >> There are ways to put Shiny apps into Rmarkdown documents; see
> > > >>
> > > ><https://beta.rstudioconnect.com/content/2671/Combining-Shiny-R-Markdown.html>.
> > > >>   Other than my two notes above, your comments about Rmarkdown seem
> > > >> right on the mark.
> > > >>
> > > >> Duncan Murdoch
> > > >>
> > > >> >
> > > >> >>
> > > >> >>
> > > >> >>         I'm trying to do real time monitoring of the broadcast
> > > >quality of
> > > >> >> a radio station, and it seems to me that it may be easier to do
> > > >that in
> > > >> >> Python than in R.[1]  This led me to a recent post to
> > > >> >> "[hidden email]" that mentioned "Jupyter, Mathematica, and
> > > >the
> > > >> >> Future of the Research Paper"[2] by Paul Romer, who won the 2018
> > > >Nobel
> > > >> >> Memorial Prize in Economics only a few days ago.  In brief, this
> > > >article
> > > >> >> suggests that Jupyter notebooks may replace publication in
> > > >refereed
> > > >> >> scientific journals as the primary vehicle for sharing scientific
> > > >> >> research, because they make it so easy for readers to follow both
> > > >the
> > > >> >> scientific and computational logic and test their own
> > > >modifications.
> > > >> >>
> > > >> >>
> > > >> >>         A "Jupyter Notebook Tutorial: The Definitive Guide"[3]
> > > >suggested
> > > >> >> I first install Anaconda Navigator.  I got version 1.9.2 of that.
> > > >It
> > > >> >> opens with options for eight different "applications" including
> > > >> >> JupyterLab 0.34.9, Jupyter Notebook 5.6.0, Spyder 3.3.1 (an IDE
> > > >for
> > > >> >> Python), and RStudio 1.1.456.
> > > >> >>
> > > >> >>
> > > >> >>         This leads to several questions:
> > > >> >>
> > > >> >>
> > > >> >>               1.  In general, what experiences have people had
> > > >with
> > > >> >> Jupyter Notebooks, Anaconda Navigator, and RMarkdown vignettes in
> > > >> >> RStudio, and the similarities and differences?  Do you know any
> > > >> >> references that discuss this?
> > > >> >
> > > >> > I've used both extensively, and noted the differences I've
> > > >discovered above.
> > > >> >
> > > >> >>
> > > >> >>
> > > >> >>               2.  More specifically, does it make sense to try to
> > > >use
> > > >> >> RStudio from within Anaconda Navigator, or is one better off using
> > > >> >> RStudio as a separate, stand alone application -- or should one
> > > >even
> > > >> >> abandon RStudio and run R instead from within a Jupyter Notebook?
> > > >[I'm
> > > >> >> new to this topic, so it's possible that this question doesn't
> > > >even make
> > > >> >> sense.]
> > > >> >
> > > >> > The only advantage I can think of to using Rstudio via Anaconda is
> > > >> > that you could use conda environments to maintain different
> > > >versions
> > > >> > or R and/or R packages for different projects.
> > > >> >
> > > >> > You'll have to weigh the pros and cons to decide whether to switch
> > > >> > from Rstudio to Jupyter notebooks. Depending on what you want to do
> > > >> > there are both advantages and disadvantages, as discussed above.
> > > >> >
> > > >> > Finally, I have to give a plug for a couple of related tools that I
> > > >> > find very useful.
> > > >> >
> > > >> > Emacs org-mode https://orgmode.org/ gives you the best of both
> > > >worlds:
> > > >> > notebooks unconstrained by the browser that can include code in
> > > >> > multiple languages, header arguments, excellent export support,
> > > >etc.
> > > >> > It is superior to both Jupyter and Rmarkdown, except that support
> > > >only
> > > >> > exists in Emacs.
> > > >> >
> > > >> > Jupytext (https://github.com/mwouts/jupytext) is another way to
> > > >have
> > > >> > it all, by allowing you to edit in markdown or Rmarkdown, and
> > > >> > auto-generating a notebook and possibly other formats for you. I've
> > > >> > only recently started experimenting with it, but so far I like it a
> > > >> > lot.
> > > >> >
> > > >> > Best,
> > > >> > Ista
> > > >> >>
> > > >> >>
> > > >> >>         Thanks,
> > > >> >>         Spencer Graves
> > > >> >>
> > > >> >>
> > > >> >> [1] If you have ideas for how best to do real time monitoring of
> > > >> >> broadcast quality of a radio station, I'd love to hear them.  I
> > > >need
> > > >> >> software that will do that, preferably something that's free, open
> > > >> >> source.  The commercial software I've seen for this is not
> > > >adequate for
> > > >> >> my purposes, so I'm trying to write my own.  I have a sample
> > > >script in
> > > >> >> Python that will read a live stream from a radio tuner and output
> > > >a
> > > >> >> *.wav of whatever length I want, and I wrote Python eight years
> > > >ago for
> > > >> >> a similar real time application.  I'd prefer to use R, but I don't
> > > >know
> > > >> >> how to get started.
> > > >> >>
> > > >> >>
> > > >> >> [2] 2018-04-13:
> > > >> >>
> > > >"https://paulromer.net/jupyter-mathematica-and-the-future-of-the-research-paper".
> > > >> >> This further cites a similar article in The Atlantic from
> > > >2018-04-05:
> > > >> >>
> > > >"www.theatlantic.com/science/archive/2018/04/the-scientific-paper-is-obsolete/556676".
> > > >> >>
> > > >> >> ______________________________________________
> > > >> >> [hidden email] mailing list -- To UNSUBSCRIBE and more, see
> > > >> >> https://stat.ethz.ch/mailman/listinfo/r-help
> > > >> >> PLEASE do read the posting guide
> > > >http://www.R-project.org/posting-guide.html
> > > >> >> and provide commented, minimal, self-contained, reproducible code.
> > > >> >
> > > >> > ______________________________________________
> > > >> > [hidden email] mailing list -- To UNSUBSCRIBE and more, see
> > > >> > https://stat.ethz.ch/mailman/listinfo/r-help
> > > >> > PLEASE do read the posting guide
> > > >http://www.R-project.org/posting-guide.html
> > > >> > and provide commented, minimal, self-contained, reproducible code.
> > > >> >
> > > >>
> > > >
> > > >______________________________________________
> > > >[hidden email] mailing list -- To UNSUBSCRIBE and more, see
> > > >https://stat.ethz.ch/mailman/listinfo/r-help
> > > >PLEASE do read the posting guide
> > > >http://www.R-project.org/posting-guide.html
> > > >and provide commented, minimal, self-contained, reproducible code.
> > >
> > > --
> > > Sent from my phone. Please excuse my brevity.
> >
> > ______________________________________________
> > [hidden email] mailing list -- To UNSUBSCRIBE and more, see
> > https://stat.ethz.ch/mailman/listinfo/r-help
> > PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> > and provide commented, minimal, self-contained, reproducible code.

______________________________________________
[hidden email] mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.