R statistics/Installation

From GRASS-Wiki
Jump to navigation Jump to search

First of all you need to install R in your system.

R and many of its packages are pre-built and distributed through the CRAN network of mirrors. In addition many Linux distributions pre-package R and a number of the most popular libraries.

Status of rgrass package

See the overview here: https://cran.r-project.org/web/packages/rgrass/index.html

Installation

Linux

Debian and Ubuntu

R and a number of pre-build cran packages are already present in the main repositories. Start with:

# apt-get install r-base r-cran-vr r-cran-rodbc r-cran-xml

Once those are installed start "R" at the command prompt and install the rgrass library:

install.packages("rgrass", dependencies = TRUE)
install.packages("terra")
  • Debian and Ubuntu specific help is also available from the R-project website.
RPM based
  • RedHat, Fedora, openSuse, ... and similar distros:
# sudo dnf install R

This R RPM is a meta-package. It has no content but ensures that the following components are installed: R-core, R-core-devel, R-java, R-java-devel, libRmath, libRmath-devel. Once those are installed, start "R" and install the rgrass library:

install.packages("rgrass", dependencies = TRUE)
install.packages("terra")

Mac OSX

Start an R session and try:

install.packages("rgrass", type="source", dependencies = TRUE)

Startup of GRASS from within R:

First you need to find the path to the GRASS binaries: Control-click on the GRASS.app and you'll get a popup menu; select "Show Package Contents" - this opens you to the directory structure. Go to Contents->Resources which would be "GISBASE"; So, in my case, the "gisBase" parameter is "/HD/Applications/Grass-8.2.app/Contents/Resources". If you Command-click at the top of the window on the folder icon beside "Resources" (from the line above this one), you can see the full path.

Now we can run GRASS from within a R session:

library(rgrass)
initGRASS(gisBase ='/Applications/GRASS-8.2.app/Contents/Resources', 
          location = 'nc_spm_08_grass7', 
          mapset = 'user1', 
          gisDbase = '/Users/carol/Documents/grassdata', 
          override = TRUE)
Troubleshooting

If you get an error message when trying to call GRASS from R containing this line: dyld: Library not loaded: /usr/local/lib/libintl.8.dylib you need to establish a link from /Applications/Grass/GRASS-8.2.app/Contents/MacOS/lib/libintl.8.dylib to /usr/local/lib. This can be done through Terminal with the command:

sudo ln -s /Applications/Grass/GRASS-8.2.app/Contents/MacOS/lib/libintl.8.dylib /usr/local/lib/

Note: The path to the GRASS-x.x.app and the version number in libintl.X.dylib must reflect your own configuration.

MS Windows

Installation

Run:

install.packages("rgrass", dependencies = TRUE)

or install Task View 'Spatial' - Analysis of Spatial Data

install.packages("ctv")
library(ctv)
install.views("Spatial")
Usage

In winGRASS (standalone installer and OSGeo4W) the installation path of R and RStudio are dynamically loaded into PATH.

  • Start winGRASS, bring the winGRASS-windows console in front and type R for opening an R session (command line mode) inside a GRASS session.
  • Start winGRASS, bring the winGRASS-windows console in front and type RGui for opening an R session (GUI mode) inside a GRASS session.