varias superponer studio modificar lineas graficos graficas ejes r packages

studio - superponer graficas en r



Cargue mĂșltiples paquetes a la vez (8)

El paquete pacman CRAN que mantengo (creado por Dason Kurkiewicz) puede lograr esto:

Entonces el usuario podría hacer:

## install.packages("pacman") pacman::p_load(dplyr, psych, tm)

y si falta el paquete, p_load lo descargará de CRAN o Bioconductor.

¿Cómo puedo cargar un montón de paquetes a la vez sin volver a escribir el comando require una y otra vez? Probé tres enfoques, todos los cuales fallan y se queman.

Básicamente, deseo suministrar un vector de nombres de paquetes a una función que los cargará.

x<-c("plyr", "psych", "tm") require(x) lapply(x, require) do.call("require", x)


Esto debería funcionar:

lapply(x, FUN = function(X) { do.call("require", list(X)) })

(La clave es que el argumento args en do.call(what, args) debe ser una lista --- ¡incluso si solo tiene un elemento único!)


Simplemente puede usar el paquete lubripack e instala cuidadosamente nuevos paquetes y luego los carga todos en una línea.

lubripack ("plyr", "psych", "tm")

Aquí está la salida después de ejecutar el código anterior en RStudio.

Cómo instalar el paquete:

Ejecute el código siguiente para descargar el paquete e instalarlo desde GitHub. No es necesario tener una cuenta de GitHub.

library(devtools) install_github("espanta/lubripack")


Sobre la base de la solución de daroczig, si no desea especificar una lista como entrada, puede usar

# Foo mLoad <- function(...) { sapply(sapply(match.call(), as.character)[-1], require, character.only = TRUE) } # Example mLoad(plyr, dplyr, data.table)

... que es más corto que

lapply(list(''plyr'', ''dplyr'', ''data.table''), require, character.only = TRUE)


Una opción alternativa proviene del paquete easypackages . Una vez instalado, puede cargar paquetes de la manera más intuitiva:

libraries("plyr", "psych", "tm")

El paquete también incluye una función para instalar varios paquetes:

packages("plyr", "psych", "tm")

Referencia here .


Varias permutaciones de las funciones propuestas funcionan, pero solo si especifica que el argumento character.only es TRUE . Ejemplo rápido:

lapply(x, require, character.only = TRUE)


Yo uso la siguiente función:

mrip <- function(..., install = TRUE){ reqFun <- function(pack) { if(!suppressWarnings(suppressMessages(require(pack, character.only = TRUE)))) { message(paste0("unable to load package ", pack, ": attempting to download & then load")) install.packages(pack) require(pack, character.only = TRUE) } } lapply(..., reqFun) }

Esto intenta cargar, y si falla instala e intenta cargar nuevamente.


para alguien que quiere instalar y cargar paquetes simultáneamente encontré esta función en el siguiente enlace https://gist.github.com/stevenworthington/3178163

# ipak function: install and load multiple R packages. # check to see if packages are installed. Install them if they are not, then load them into the R session. ipak <- function(pkg){ new.pkg <- pkg[!(pkg %in% installed.packages()[, "Package"])] if (length(new.pkg)) install.packages(new.pkg, dependencies = TRUE) sapply(pkg, require, character.only = TRUE) } # usage packages <- c("ggplot2", "plyr", "reshape2", "RColorBrewer", "scales", "grid") ipak(packages)