6 ms·
What's the benefit of this over Ipython notebooks? I think Ipython notebooks can run R as well...
by pastaking 10y ago
What's the benefit of this over Ipython notebooks? I think Ipython notebooks can run R as well...
- larrydag 10y agoNative to the RStudio development toolkit. Seamless integration to R projects. I believe this is meant to improve R development output and presentation.
- goatlover 10y agoIpython Notebooks is called Jupyter now, and it supports a bunch of languages in addition to Julia, Python and R (thus the Jupyter name). R Notebooks looks like a variation, but less of a REPL approach, perhaps.
- baldfat 10y agoFull REPL. Also does multiple of languages. It does C++, R, Python and I use this a ton BASH.
- kriro 10y agoWhile not huge, they can be previewed in RStudio (not sure if IPN/Jupyter can be) but generally it's not a bad idea to have all the tooling from the same language crowd (imo). Worst case it's an extra alternative to the excellent IPN/Jupyter. I've used RStudio more and more for my "quick check stats" like quickly calculating interrater reliability or whatever pops up (I only know the basics of R). As such I can totally see myself quickly sharing things with R Notebooks. For everything that requires "plumbing" and/or actually uses stats in software I gravitate towards the Python toolchain. Might not make sense but that's how I work. I've also noticed that RStudio is accessible enough to non programmers for the same quick checks I run (converting over some SPSS users...yay?!).
- baldfat 10y agoFrom kintr website: http://yihui.name/knitr/demo/engines/ http://yihui.name/knitr/demo/engines/ Language wise you can use the following in knitr: We can use any languages in knitr, including but not limited to R. Here are some simple demos with Python, Awk, Ruby, Haskell, Bash, Perl, Graphviz, TikZ, SAS, Scala, and CoffeeScript, etc: python.Rmd (output) c.Rmd (output) fortran.Rmd (output) sql.Rmd (output) awk.Rmd (output) ruby.Rmd (output) haskell.Rmd (output) bash.Rmd (output) perl.Rmd (output) dot.Rmd (output) tikz.Rmd (output) sas.Rmd (output) coffeescript.Rmd (output) polyglot.Rmd (output) Scala, Python, and Bash Also glad Python works for you and it is an awesome choice. I would just recommend looking at dplyr tutorial for the "plumbing." you might keep to your Python but this is an awesome workflow. https://cran.rstudio.com/web/packages/dplyr/vignettes/introduction.html https://cran.rstudio.com/web/packages/dplyr/vignettes/introd...
- claytonjy 10y agoOne drawback worth mentioning is that while all R chunks in a notebook share the same environment, non-R chunks do not. This means that if the first e.g. python chunk creates a variable `x`, the next python chunk will not be able to use it. Jupyter notebooks don't have this issue.
- homerowilson 10y agoThey are plain text, you can easily diff and version control them.
- baldfat 10y ago1) Version Control! I normally run a single user git workflow and even that is a problem with Jupyter notebooks. 2) Code Execution is all at once or in chunks in R Notebooks. So I can do everything in batches. I do this so I can loop through 13 reports all pointing to one certain group of persons. 3) Works as a script out of the box and you don't have to change the format of your code. 4) Output. In R Notebooks I can output to HTML, PDF, Word/Libre Office or a dozen other formats with one line of code. I can have it in all formats at once. Because it all in one R Markdown file.
- ced 10y agoVersion Control! I normally run a single user git workflow and even that is a problem with Jupyter notebooks. What's the difference? Most plotting libraries output MBs of HTML/Javascript, that would be a mess in git. How does R Notebooks handle this?
- baldfat 10y agogit just backs up the source files not the output of the scripts. You could have a images folder and have git upload the graphics but I personally don't do that.
- matt4077 10y agoI'd say generated data just shouldn't be saved by default. For long-running scripts, the actual data is usually written to files anyway.
- jmcphers 10y agoR notebooks keep all that HTML and Javascript in a separate file. You can choose to check that file into git if you want to version the output, but if all you care about is versioning the code, it's just a plain text R Markdown file.
- spot 10y agothat's interesting. what file is this and where is it kept? so if i want to send my notebook to someone and include my results, i have to send two files? or is there one file per output, per directory, or per user?
- blahi 10y agoIn addition to the rest of the replies - IDE tooling, like a debugger, variable explorer and other nice features like that.
- gcr 10y agoAny process can connect to a running Jupyter kernel, just like IPython's IDE support. Emacs uses this to inspect variables and provide autocomplete suggestions for variables inside a running Jupyter notebook, for example.
- blahi 10y agoyeah, debugging in jupyter is absolutely great!
- baldfat 10y agoyou don't need RStudio. It can be run in R console even.
- resolaibohp 10y agoOne of the benefits R studio has over the Jupyter notebooks is the global environment view. It makes it very easy to look at your data and go through it.
- peatmoss 10y agoAs others have pointed out, revision control. That said, Jupyter supports more languages than R Notebooks. For the best of both worlds, org-mode takes the revisionable approach of R Notebooks, but supports just about any language you could want. Org-mode simply requires turning on inline preview to duplicate the functionality of R notebooks. Also, org-mode as a markup format supports some important features such as cross-references that are unsupported by RMarkdown. Org-mode is the oldest of these three notebooks, yet is the most full-featured. If anything, the fact that you can do so very, very much more with org-mode is probably why it's the least popular. That and being tied to emacs in the same way that R notebooks is tied to RStudio. Nevertheless, I have to wonder if we all wouldn't have been better off building a non-emacs implementation of org-mode rather than Jupyter and R Notebooks.