Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to set up conda-installed R for use with RStudio?

enter image description here

I've been trying to set up my R using conda (eventually to use with Beaker Notebook) and I want to be able to use RStudio with my conda-installed version of R.

My method of installing R:

conda install -c r r
conda install -c r r-essentials
conda install -c r r-rserve
conda install -c r r-devtools
conda install -c r r-rcurl
conda install -c r r-RJSONIO
conda install -c r r-jpeg
conda install -c r r-png
conda install -c r r-roxygen2
conda install --channel https://conda.anaconda.org/bioconda bioconductor-edger

I ran that version of R (I only installed this version)

> version
               _                           
platform       x86_64-apple-darwin11.0.0   
arch           x86_64                      
os             darwin11.0.0                
system         x86_64, darwin11.0.0        
status                                     
major          3                           
minor          3.1                         
year           2016                        
month          06                          
day            21                          
svn rev        70800                       
language       R                           
version.string R version 3.3.1 (2016-06-21)
nickname       Bug in Your Hair   

Running R in Jupyter is kind of buggy. For example, when it outputs errors, it outputs to stdout and splits every character in the string with a linebreak. I want to use RStudio but I don't want to install another version of R.

How can I route my conda version of R into RStudio?

Here's my .bash_profile not sure if this will be useful:

$ cat ~/.bash_profile
# added by Anaconda3 4.0.0 installer
export PATH="/Users/jespinoz/anaconda/bin:$PATH"

export RSTUDIO_WHICH_R=/Users/jespinoz/anaconda/bin/R 

I've been trying to follow these tutorials but I am lost. I'm really not too familiar with environment variables and such things.

(1) https://support.rstudio.com/hc/en-us/community/posts/207830688-Using-RStudio-with-conda

(2) Launch mac eclipse with environment variables set

when I looked for my R it directed me to:

$ which R
/Users/jespinoz/anaconda/bin/R

but the directions from (1) is using this path which is very confusing:

/Users/jespinoz/anaconda/lib/R/bin/R

I tried doing what this guy did and added this to my .bash_profile but it didn't work. I even made a .bashrc but it still didn't work (I sourced both after I added the lines)

export RSTUDIO_WHICH_R=/Users/jespinoz/anaconda/bin/R

How to tell RStudio to use R version from Anaconda

Unfortunately, anaconda has no tutorial for this in https://docs.continuum.io/anaconda/ide_integration

like image 202
O.rka Avatar asked Jul 22 '16 19:07

O.rka


People also ask

How do you use conda in R?

install r and r-essentials: conda install -c r r r-essentials. activate your new conda environment: conda activate clermonTyping. Open up R in the terminal: R. install whatever packages you need directly in R (in my case it was tidyverse and knitr): install.

Does Anaconda automatically install R?

Once you select the Install button, Anaconda will automatically install R in your environment and bring you back to the Navigator screen, now showing the Launch button as shown in the preceding ...

Can we run R code in Anaconda?

Go to the Anaconda Navigator and open Jupyter Notebook or type jupyter notebook in the Anaconda Prompt. Under New you should find an R kernel. Click on that to start running R in the Jupyter environment.


3 Answers

See https://anaconda.org/r/rstudio:

$ conda install -c r rstudio 

Then from command line:

$ rstudio 

(It is how I installed it and it works.)

like image 71
Piotr Migdal Avatar answered Oct 02 '22 22:10

Piotr Migdal


So long as which R shows up a working R interpreter (which it should do if you have installed the r package from conda and activated your environment) then launching rstudio from that same environment should pick it up just fine.

For a test, on ArchLinux, I built and installed: https://aur.archlinux.org/packages/rstudio-desktop-git/

.. then force removed the R interpreter (pacman -Rdd r), then installed r from conda (conda install -c r r) and it worked fine. I then closed my terminal and opened a new one (so that the correct conda environment was not activated and successfully launched RStudio with the following command: RSTUDIO_WHICH_R=/home/ray/r_3_3_1-x64-3.5/bin/R rstudio

I think the crux is to launch RStudio from the right environment? Your ~/.bash_profile and ~/.bashrc are only sourced when you run bash. For environment variables to be set so that the your desktop environment knows about them, on Linux, you should put them in ~/.profile or else in /etc/pam.d (you may need to logout or shutdown after making those changes) and on OS X, you should check out https://apple.stackexchange.com/q/57385

like image 21
Ray Donnelly Avatar answered Oct 02 '22 22:10

Ray Donnelly


Update: ADD THIS TO ~/.bash_profile !

export RSTUDIO_WHICH_R="/Users/jespinoz/anaconda/bin/R"
launchctl setenv RSTUDIO_WHICH_R $RSTUDIO_WHICH_R

Credits to @Z-Shiyi for the last line https://github.com/conda/conda/issues/3316#issuecomment-241246755


An addition to what @Ray Donnelly said above. Basically, it has to be executed from the correct environment (i.e. run it from the terminal).

You can either:

(A) Put this in your ~/.bash_profile export RSTUDIO_WHICH_R=/Users/[yourusername]/anaconda/bin/R (if youre using conda but you could put any R path)

(B) then type this in the terminal after it's been sourced (either restart terminal or do source .bash_profile): open -a RStudio That should work.

or you can do what I did:

(A) open up automator (sorry if you're not on a mac; this will only work on mac)

(B) use a Run Shell Script

(C) then delete cat that's already in there and put in: export RSTUDIO_WHICH_R=/Users/[yourusername]/anaconda/bin/R open -a RStudio

(D) Save it as something like run_rstudio.app then just run that and it should work: enter image description here

like image 24
O.rka Avatar answered Oct 02 '22 21:10

O.rka