R é unha entorna e linguaxe de programación cun enfoque á análise estatística. Esta linguaxe permite a instalación de paquetes de software elaborados por outros membros para extender a súa configuración básica. Nesta entrada definimos un conxunto de paquetes así como as dependencias que necesitan ser cubertas para a súa instalación dentro do sistema Debian e Fedora. Os paquetes están definidos como:
O primeiro é instalar os paquetes necesarios para poder levar a cabo a operación. En Debian:
apt-get -y install libxml2-dev libcurl4-openssl-dev default-jre default-jdk libssl-dev libsodium-dev libjq-dev libv8-dev libfontconfig1-dev libudunits2-dev gdal-config libprotobuf-dev unixodbc-dev libgdal-dev libzmq3-dev protobuf-compiler
E en Fedora:
sudo dnf install openssl-devel libcurl-devel curl libsodium-devel udunits2-devel zeromq-devel openjpeg2-devel jq-devel v8-devel protobuf-compiler turbojpeg-devel openjpeg-libs libjpeg-turbo-devel libjpeg-turbo gdal gdal-devel gdal-libs proj proj-devel geos-devel udunits2-devel sqlite-devel unixODBC-devel
Recordar, antes de instalar os paquetes, ter correctamente configurado Java. Para elo executar como administrador:
R CMD javareconf
Unha vez instalado todo o necesario levamos a cabo o seguinte proceso en R:
paquetes <- c(
# Paquetes de análise de tipo xeral
"conflicted", # An Alternative Conflict Resolution Strategy
"tidyverse", # Easily Install and Load the Tidyverse
"lubridate", # Make Dealing with Dates a Little Easier
"janitor", # Simple Tools for Examining and Cleaning Dirty Data
"operator.tools", # Utilities for Working with R's Operators
# Gráficos
"viridis", # Colorblind-Friendly Color Maps for R
"scales", # Scale Functions for Visualization
"cowplot", # Streamlined Plot Theme and Plot Annotations for 'ggplot2'
"classInt", # Choose Univariate Class Intervals
"ggtext", # Improved Text Rendering Support for 'ggplot2'
"ggrepel", # Automatically Position Non-Overlapping Text Labels with 'ggplot2'
"ggfortify", # Data Visualization Tools for Statistical Analysis Results
"ggpubr", # 'ggplot2' Based Publication Ready Plots
# Mapas
"sf", # Simple Features for R
"mapview", # Interactive Viewing of Spatial Data in R
"gt", # Easily Create Presentation-Ready Display Tables
"webshot2", # Take Screenshots of Web Pages
# Difusión
"mailR", # A Utility to Send Emails from R
# LaTeX - R Markdown
"rmarkdown", # Dynamic Documents for R
"tinytex", # Helper Functions to Install and Maintain TeX Live, and Compile LaTeX Documents
"knitr", # General-Purpose Package for Dynamic Report Generation in R
"kableExtra", # Construct Complex Table with 'kable' and Pipe Syntax
"xtable", # Export Tables to LaTeX or HTML
"bookdown", # Authoring Books and Technical Documents with R Markdown
# Conexións
"rJava", # Low-Level R to Java Interface
"RCurl", # General Network (HTTP/FTP/…) Client Interface for R
"arrow", # Integration to Apache Arrow
"sparklyr", # R Interface to Apache Spark
"DBI", # R Database Interface
"odbc", # Connect to ODBC Compatible Databases (using the DBI Interface)
"RSQLite", # SQLite Interface for R
"AzureStor", # Storage Management in 'Azure'
# Ficheiros
"openxlsx", # Read, Write and Edit xlsx Files
"readxl", # Read Excel Files
"pxR", # PC-Axis with R
"readODS", # Read and Write ODS Files
"readr", # Read Rectangular Text Data
# WebScrapping
"rvest", # Easily Harvest (Scrape) Web Pages
# Análise
"seasonal", # R Interface to X-13-ARIMA-SEATS
"reticulate", # Interface to 'Python'
# Outros
"tools", # Tools for Package Development
"calendar" # Create, Read, Write, and Work with 'iCalendar' Files, Calendars and Scheduling Data
)
No caso de openSUSE algúns paquetes dependentes de JAVA van fallar na súa compilación. Isto é debido a que dependen dun paquete que no repositorio EPEL de Fedora denomínase v8-devel
. Este paquete non está dispoñible en openSUSE, salvo para versións anteriores e pertencentes a repositorios de terceiros. Para solucionar isto, seguimos a solución proposta que se amosa na páxina de ropensci.org. Nesta páxina amósase a opción de instalar V8 directamente en R. Para elo executaremos en R os seguintes comandos:
Sys.setenv(DOWNLOAD_STATIC_LIBV8=1)
install.packages("V8")
Recordar volver a executar o comando de reconfiguración de JAVA. Posteriormente executamos:
for(i in paquetes){
if(!i %in% installed.packages()){
cat(paste0("Instalando ",i,"\n"))
install.packages(i)
}else{
cat(paste0("Paquete ",i," instalado\n"))
}
}