8 ms·
Advantages of Using R Notebooks Instead of Jupyter Notebooks (2017)
- stephengillie 8y agoBit of a typo in the title. Original: Advantages of Using R Notebooks For Data Analysis Instead of Jupyter Notebooks
- peatmoss 8y agoR notebooks behave similarly to org-mode, albeit with fewer supported languages and a few less options for controlling execution and value passing between code blocks. Org-mode is the oldest and most powerful environment of this sort that I know of. That said, for new users, I think R Notebooks are less daunting than Emacs + org-mode. Like most things associated with RStudio and the Tidyverse, I feel that they’ve really done their homework. Even if org-mode does more, I feel it’s pretty evident that R Notebooks at least made an effort to understand org-mode’s prior art.
- kryptiskt 8y agoI think it's likely R was inspired more by Mathematica's venerable notebook interface.
- klmr 8y agoIt was obviously inspired by many different things but the most direct genealogy is WEB [1] → noweb → Sweave → Knitr → R Markdown → R Notebooks. Mathematica’s notebook interface in turn was almost certainly also inspired (directly or indirectly) by WEB, given that this was the first literate programming tool ever created. [1] https://en.wikipedia.org/wiki/WEB https://en.wikipedia.org/wiki/WEB
- radmuzom 8y agoA really good article on notebooks is the blog post by Yihui Xie - https://yihui.name/en/2018/09/notebook-war/ https://yihui.name/en/2018/09/notebook-war/.
- closed 8y agoRE python in Rmarkdown being limited... > The Python session ends after the cell executes, making it unhelpful for tasks other than ad hoc scripts. This isn't the case anymore thanks to the reticulate library. https://blog.rstudio.com/2018/03/26/reticulate-r-interface-to-python/ https://blog.rstudio.com/2018/03/26/reticulate-r-interface-t...
- nerdponx 8y agoReticulate was a major improvement in the data science workflow. We now have full interoperability between R, Python, and Julia (or Scala if you're on Spark). The ability to mix languages is really valuable.
- cauthon 8y agoWhat would be the equivalent package for Julia?
- ChrisRackauckas 8y agoWeave.jl
- nerdponx 8y agoPyCall.jl can call Python from Julia. On the downside, it has a lot of problems and there doesn't seem to be enough dev effort to match.
- cauthon 8y agoIs there an equivalent library for Julia?
- minimaxir 8y agoOP here: reticulate isn't native to R Studio yet (it's in the insider build), but will be interesting to see what happens with adoption then.
- laichzeit0 8y agoIt’s just that RStudio’s vim support is so extremely bad, compared to VSCode or even the Jupyter Notebook vim plug-in. I guess this won’t bother you if you don’t have a developer background, but I find that editing code in RStudio is a real pain. I wish I could use RStudio with the exact same keybindings and vim behavior as Jupyter in the browser. That alone would make things bearable. Like the exact same keys for cell execution, adding new cells, etc. Call it “Jupyter mode”.
- vhhn 8y agoAlso vim editing is restricted to editor window in the current session. So you can't paste from registers in console or in other RStudio sessions. But its still much better experience to use RStudio markdown than Jupyter for me.
- deleted 8y ago[deleted]
- shreyansh_k 8y agoHi, Which plugin do you use for Vim binding in Jupyter?
- laichzeit0 8y agohttps://github.com/lambdalisue/jupyter-vim-binding https://github.com/lambdalisue/jupyter-vim-binding
- scoot_718 8y ago* You get enjoy a language with incompatible interfaces for every single data structure. * Write-only language ensures your ideas are difficult to steal
- mike_ivanov 8y agoThat sounds kind of ..uhmm.. incoherent. Care to elaborate?
- laingc 8y agoIf you’ve used both R and another, more reasonable language for any length of time, it’s perfectly coherent.
- gaius 8y agoIn the Tidyverse everything in R is perfectly logical and coherent. What would you consider to be a “reasonable” language then?
- mangecoeur 8y agoOne where it was not necessary to specially create a ‘tidy’ version of everything to escape the horrific mess that exists by default
- mike_ivanov 8y agoOK, I see. The debate is gradually coming to the pitchforks and torches phase. Tons of adjectives and still zero meaningful input. I insist on explaining what the "horrific mess" part is about.
- gaius 8y agoYour language was perfect the day it was created was it? R and it’s ecosystem stand head and shoulders above the rest.
- 8y ago
- gaius 8y agoWorking in RMarkdown it is super-easy to generate a publishable document from your research. Whereas there is still no good Jupyter—>PDF solution.
- pred_ 8y agoWhat's wrong with nbconvert?
- gaius 8y agoIt’s fine if you just want to show something to someone who for whatever reason can’t run the notebook themselves, but it’s not up to producing a “formal” document. Maybe in a few years it might be.
- jhbadger 8y agoIn theory, because you can access LaTeX features from an R Notebook, you could even write an entire manuscript with it, although I don't know if anyone has.
- usgroup 8y agoI’ve moved to Orgmode Babel for all my notebook needs. Work straight out of emacs, exports to many formats, literate programming, supports dozens of languages. Previously used R notebooks exclusively for all the benefits author mentioned.
- j88439h84 8y agohttps://github.com/gregsexton/ob-ipython https://github.com/gregsexton/ob-ipython is good
- okket 8y agoPrevious discussion from a year ago: https://news.ycombinator.com/item?id=14522795 https://news.ycombinator.com/item?id=14522795 (70 comments)
- klmr 8y agoThe article claims that > R Notebooks can only be created and edited in RStudio Luckily, this is wrong. Since R Notebooks are simply R Markdown, they can be edited with any editor (although the integration is obviously lost). This is, in fact, one of its decisive advantages over Jupyter Notebooks: most of the other issues mentioned in the article are solvable, whereas this issue fundamentally isn’t.
- babahoyo 8y agoBut the nice interactivity of it is only in RStudio iirc, which is a major selling point.
- klmr 8y agoYep, the RStudio integration is very nice. However, there are other ways of authoring R Notebooks that also allow interactivity, and the only thing that’s missing then is having output inline inside the editable document. Apart from that, if you for example use Nvim-R or ESS, you can write R Markdown, execute chunks selectively, and get a visual, interactive representation of the results in real time that way. And once the document is done, a single press of a button will render the resulting Markdown/HTML/PDF document.
- gtycomb 8y agoAfter I used ESS with Emacs starting many years ago, I haven't opened RStudio. I know RStudio is very very nice, and ESS is a very complete option too.
- minimaxir 8y agoOP here: Fair counterpoint, although when I wrote that I was more referring to the HTML knitting (via knitr). Also, there's a few very-new VS Code plugins for R Markdown which look very very interesting. (https://marketplace.visualstudio.com/items?itemName=neuron.neuron-IPE https://marketplace.visualstudio.com/items?itemName=neuron.n...)
- jabble 8y agohttps://atom.io/packages/hydrogen https://atom.io/packages/hydrogen + git is a decent way to get jupyter interactivity and an easy to apply version control on a plain python file
- SEJeff 8y agoPrimary disadvantage of using R Notebooks Instead of Jupyter Notebooks: Writing R instead of numpy / pandas python.
- jbmorgado 8y agoYou can use Python in R Notebooks. It is not fully integrated with RStudio, but pertaining just the notebooks, it runs fine.
- gtycomb 8y agoR's tidyverse, along with the numerous R packages/documentation developed and tested over a long period of time, are efficient too. Thankful to see both Python and R thrive.
- Myrmornis 8y agoDoes anyone know why the ipython developers rejected solutions in which version control diffs were readable?