R Environments#
Users who require versions of R or R packages packages that are not currently
installed on SMU HPC systems are encouraged to utilize custom virtual
environments. Virtual environments allow users to use specific versions of R
with the packages of their choice. Additionally, R environments increase
portability, which will help to ensure that R programs that run on SMU HPC
systems can also run on other machines with minimal changes. The primary way to
create virtual environments is using a conda environment.
Base R#
The following creates and activates a base R installations with R version 4.4.3:
module load miniforge
mamba create -n r_env --channel conda-forge r-base=4.4.3
mamba activate r_env
Note
Even though the newest version of R is usually available, it is recommend to step back a version because not all compatible packages are available immediately for the newest version of R. See the next section for more details on installing packages.
R Packages#
Once your conda environment is created, you can install packages either directly
through conda, or sometimes using the install.packages() function in R. Note that some packages
require linux libraries, and those will need to be installed using conda. The following
examples show how to install the dplyr package in both.
To find if you packages is available in conda, typically you can search the package name
with the r- prefix. For example, for dplyr, the conda version is r-dplyr. The following
will show you all the versions of the packag available:
conda search --override-channels --channel conda-forge r-dplyr
If it is available, the conda environment will usually resolve to the correct package version
for your R installation:
module load miniforge
mamba activate r_env
mamba install --channel conda-forge r-dplyr
However, a specific package version can be installed by specifying it:
module load miniforge
mamba activate r_env
mamba install --channel conda-forge r-dplyr=1.1.4
You can check the version of an installed package with packageVersion():
R -e "packageVersion('dplyr')"
Warning
This method is not recommended with conda environments. Only do this if installing with conda does not work.
You can run one line of R code with the -e flag:
module load miniforge
mamba activate r_env
R -e "install.packages('dplyr', repos = 'https://cloud.r-project.org/')"
Or you can launch R and use it as you would in a normal R console:
module load miniforge
mamba activate r_env
R
install.packages("dplyr", repos = "https://cloud.r-project.org/")