Cómo instalar la librería espacial Terra de R en un entorno conda - Tutorial

Hemos investigado herramientas avanzadas como lenguajes de programación para el análisis espacial, hasta ahora Python fue nuestra elección de facto debido a su velocidad de aprendizaje y su facilidad de uso. Sin embargo, cuando se trabaja con una gran cantidad de datos y se realizan consultas espaciales masivas, surgen algunas preguntas sobre el rendimiento de Python y luego analizamos otras opciones como R, Julia o Rust. Hemos realizado este tutorial para la instalación de la librería espacial Terra en un kernel R en Jupyter bajo un entorno Conda, el tutorial cubre todos los pasos de instalación en Windows junto con algunos ejemplos para cargar y plotear datos vectoriales y ráster.

Tutorial

Código

Líneas de comando en Anaconda Prompt:

Crea el entorno

conda create -n rspatial

Activa tu entorno

conda activate rspatial

Instala las librerías requeridas

conda install -c conda-forge r-terra jupyterlab r-irkernel

Si desea desactivar el entorno, escriba:

deactivate

Si desea eliminar el entorno, simplemente escriba

conda env remove -n rspatial


Este es el código de ejemplo para cargar archivos shapefiles y rásteres

#Check the version of R to check the compatibily with the terra package
R.version
_                           
platform       x86_64-w64-mingw32          
arch           x86_64                      
os             mingw32                     
system         x86_64, mingw32             
status                                     
major          4                           
minor          1.3                         
year           2022                        
month          03                          
day            10                          
svn rev        81868                       
language       R                           
version.string R version 4.1.3 (2022-03-10)
nickname       One Push-Up
#install required packages for terra 
#install.packages('codetools')
package 'codetools' successfully unpacked and MD5 sums checked

The downloaded binary packages are in
    C:\Users\saulm\AppData\Local\Temp\Rtmpuicsub\downloaded_packages
#call the terra package
library("terra")
terra 1.5.21


Abrir datos vectoriales espaciales

#open the shapefile
vectorData <- vect('../In/Shp/Geology_Aoi_Reclass_10N.shp')

#get shapefile info
vectorData
Warning message:
"PROJ: proj_identify: SQLite error on SELECT key, value FROM metadata WHERE key IN ('DATABASE.LAYOUT.VERSION.MAJOR', 'DATABASE.LAYOUT.VERSION.MINOR'): no such table: metadata (GDAL error 1)"



 class       : SpatVector 
 geometry    : polygons 
 dimensions  : 2, 12  (geometries, attributes)
 extent      : 546956.3, 557456.2, 5294244, 5311978  (xmin, xmax, ymin, ymax)
 source      : Geology_Aoi_Reclass_10N.shp
 coord. ref. : WGS_1984_UTM_Zone_10N 
 names       :  OBJECTID GUNIT_TXT        COMMENTS PUB_SOURCE PUB_NUMBER
 type        :     <num>     <chr>           <chr>      <chr>      <chr>
 values      : 1.108e+04        Qw Whidbey Format~       USGS    MF 1541
               1.107e+04        Qp Peat (Holocene)       USGS    MF 1541
    QUAD_NAME      FEATURE_LI      AGE_LITHOL UNIQUE_ID Shape_Leng Shape_Area
        <chr>           <chr>           <chr>     <int>      <num>      <num>
 Edmonds East USGS | MF 1541~ Pleistocene gl~     11081  3.847e+04  3.086e+06
 Edmonds East USGS | MF 1541~ Quaternary bog~     11071   1.53e+04  7.726e+06
 ModelCode
     <int>
         2
         3
#set size of plot
library(repr)
options(repr.plot.width=12, repr.plot.height=16)

#plot shapefile
plot(vectorData, 'AGE_LITHOL')

Abrir datos ráster

#open raster dataset as grd
rasterData <- rast('../In/Rst/dem10m_clip.tif')

#show raster info
rasterData
class       : SpatRaster 
dimensions  : 1773, 1049, 1  (nrow, ncol, nlyr)
resolution  : 10.001, 10.00067  (x, y)
extent      : 546964.7, 557455.7, 5294244, 5311975  (xmin, xmax, ymin, ymax)
coord. ref. : WGS 84 / UTM zone 10N (EPSG:32610) 
source      : dem10m_clip.tif 
name        : dem10m_clip
#replace negative/empty values for NA
rasterData[rasterData<0] <- NA

#plot data
plot(rasterData)

Datos de entrada

Puede descargar los datos de entrada desde este link.

 

Suscríbete a nuestro boletín electrónico

Suscríbase a nuestro boletín gratuito para recibir noticias, datos interesantes y fechas de nuestros cursos en recursos hídricos.

 

Posted on March 31, 2022 and filed under TutorialQGIS.