Instantly share code, notes, and snippets.

Embed
What would you like to do?
Install and load multiple R packages at once
# 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)
@DaveInga

This comment has been minimized.

Show comment
Hide comment
@DaveInga

DaveInga May 9, 2015

Been looking for this function for awhile - Thanks!

DaveInga commented May 9, 2015

Been looking for this function for awhile - Thanks!

@rizwaan

This comment has been minimized.

Show comment
Hide comment
@rizwaan

rizwaan Jul 1, 2015

Saved my day. Thanks

rizwaan commented Jul 1, 2015

Saved my day. Thanks

@chriscesar

This comment has been minimized.

Show comment
Hide comment
@chriscesar

chriscesar Aug 6, 2015

Useful function. Thanks!

chriscesar commented Aug 6, 2015

Useful function. Thanks!

@b-long

This comment has been minimized.

Show comment
Hide comment
@b-long

b-long Sep 11, 2015

Wait a minute... Is this really not in the core ?

Thanks for providing it! 😃 :octocat:

b-long commented Sep 11, 2015

Wait a minute... Is this really not in the core ?

Thanks for providing it! 😃 :octocat:

@rentrop

This comment has been minimized.

Show comment
Hide comment
@rentrop

rentrop commented Oct 1, 2015

+1

@gokul180288

This comment has been minimized.

Show comment
Hide comment
@gokul180288

gokul180288 Dec 22, 2015

Awsome Steven

gokul180288 commented Dec 22, 2015

Awsome Steven

@asatito

This comment has been minimized.

Show comment
Hide comment
@asatito

asatito Jan 13, 2016

Thanks! Pretty useful

asatito commented Jan 13, 2016

Thanks! Pretty useful

@matteorizzuto

This comment has been minimized.

Show comment
Hide comment
@matteorizzuto

matteorizzuto Jan 14, 2016

Thank you very much! Super useful.

matteorizzuto commented Jan 14, 2016

Thank you very much! Super useful.

@rossie123

This comment has been minimized.

Show comment
Hide comment
@rossie123

rossie123 Feb 4, 2016

Hello stevenworthington,
I am not used to R, i am unix administrator. Could you please help to execute r packages in one shot. ( very Urgent)
As i dont have internet to the server, so cran not possble. I download the files locally and perform by this way in R console,

install.packages("/tmp/R_binaries_gz/Rsolnp_1.16.tar.gz", repos=NULL, type="source")

i have to change the package name and execute it manually for the rest of the package.

Thanks in Advance :)

rossie123 commented Feb 4, 2016

Hello stevenworthington,
I am not used to R, i am unix administrator. Could you please help to execute r packages in one shot. ( very Urgent)
As i dont have internet to the server, so cran not possble. I download the files locally and perform by this way in R console,

install.packages("/tmp/R_binaries_gz/Rsolnp_1.16.tar.gz", repos=NULL, type="source")

i have to change the package name and execute it manually for the rest of the package.

Thanks in Advance :)

@danpritts

This comment has been minimized.

Show comment
Hide comment
@danpritts

danpritts Mar 17, 2016

Using R 3.2.3 on linux. The if (length(new.pkg)) test is always returning true, so the packages are all being reinstalled even when not necessary.

danpritts commented Mar 17, 2016

Using R 3.2.3 on linux. The if (length(new.pkg)) test is always returning true, so the packages are all being reinstalled even when not necessary.

@Espanta

This comment has been minimized.

Show comment
Hide comment
@Espanta

Espanta Apr 23, 2016

You can check and use lubripack package which is an s3 package on github. It is a bit easier and robust to use. github/espanta/lubripack -> here

Espanta commented Apr 23, 2016

You can check and use lubripack package which is an s3 package on github. It is a bit easier and robust to use. github/espanta/lubripack -> here

@MatthewSchumwinger

This comment has been minimized.

Show comment
Hide comment
@MatthewSchumwinger

MatthewSchumwinger May 5, 2016

Just what I need after upgrading to latest version of R. Good stuff. Thank you.

MatthewSchumwinger commented May 5, 2016

Just what I need after upgrading to latest version of R. Good stuff. Thank you.

@brentthorne

This comment has been minimized.

Show comment
Hide comment
@brentthorne

brentthorne Dec 17, 2016

Thanks for this ! I honestly use this in all my R!

brentthorne commented Dec 17, 2016

Thanks for this ! I honestly use this in all my R!

@viditjain1

This comment has been minimized.

Show comment
Hide comment
@viditjain1

viditjain1 Jan 28, 2017

Thanks a lot!

viditjain1 commented Jan 28, 2017

Thanks a lot!

@SpencerVaradi

This comment has been minimized.

Show comment
Hide comment
@SpencerVaradi

SpencerVaradi Mar 23, 2017

Thanks! Huge help

SpencerVaradi commented Mar 23, 2017

Thanks! Huge help

@swapnilawasthi

This comment has been minimized.

Show comment
Hide comment
@swapnilawasthi

swapnilawasthi commented May 13, 2017

Thanks!!

@cemanughianpeter

This comment has been minimized.

Show comment
Hide comment
@cemanughianpeter

cemanughianpeter Jun 13, 2017

Awesome Thanks!!!

cemanughianpeter commented Jun 13, 2017

Awesome Thanks!!!

@Hintza

This comment has been minimized.

Show comment
Hide comment
@Hintza

Hintza commented Jun 17, 2017

Thanks!

@Sarmentor

This comment has been minimized.

Show comment
Hide comment
@Sarmentor

Sarmentor Jul 14, 2017

Thanks, I've changed it a little and added top 100 packages. This was useful in a new fresh R installation I had to do. You might have failing packages depending on your system features or installed libraries. You might have to run it several times to install every package. Best

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)
}
packages <- c("ggplot2", "plyr", "reshape2", "RColorBrewer", "scales", "grid", c("plyr","digest","ggplot2","colorspace","stringr","RColorBrewer","reshape2","zoo","proto","scales","car","dichromat","gtable","munsell","labeling","Hmisc","rJava","mvtnorm","bitops","rgl","foreign","XML","lattice","e1071","gtools","sp","gdata","Rcpp","MASS","Matrix","lmtest","survival","caTools","multcomp","RCurl","knitr","xtable","xts","rpart","evaluate","RODBC","tseries","DBI","nlme","lme4","reshape","sandwich","leaps","gplots","abind","randomForest","Rcmdr","coda","maps","igraph","formatR","maptools","RSQLite","psych","KernSmooth","rgdal","RcppArmadillo","effects","sem","vcd","XLConnect","markdown","timeSeries","timeDate","RJSONIO","cluster","scatterplot3d","nnet","fBasics","forecast","quantreg","foreach","chron","plotrix","matrixcalc","aplpack","strucchange","iterators","mgcv","kernlab","SparseM","tree","robustbase","vegan","devtools","latticeExtra","modeltools","xlsx","slam","TTR","quantmod","relimp","akima","memoise"))
ipak(packages)

Sarmentor commented Jul 14, 2017

Thanks, I've changed it a little and added top 100 packages. This was useful in a new fresh R installation I had to do. You might have failing packages depending on your system features or installed libraries. You might have to run it several times to install every package. Best

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)
}
packages <- c("ggplot2", "plyr", "reshape2", "RColorBrewer", "scales", "grid", c("plyr","digest","ggplot2","colorspace","stringr","RColorBrewer","reshape2","zoo","proto","scales","car","dichromat","gtable","munsell","labeling","Hmisc","rJava","mvtnorm","bitops","rgl","foreign","XML","lattice","e1071","gtools","sp","gdata","Rcpp","MASS","Matrix","lmtest","survival","caTools","multcomp","RCurl","knitr","xtable","xts","rpart","evaluate","RODBC","tseries","DBI","nlme","lme4","reshape","sandwich","leaps","gplots","abind","randomForest","Rcmdr","coda","maps","igraph","formatR","maptools","RSQLite","psych","KernSmooth","rgdal","RcppArmadillo","effects","sem","vcd","XLConnect","markdown","timeSeries","timeDate","RJSONIO","cluster","scatterplot3d","nnet","fBasics","forecast","quantreg","foreach","chron","plotrix","matrixcalc","aplpack","strucchange","iterators","mgcv","kernlab","SparseM","tree","robustbase","vegan","devtools","latticeExtra","modeltools","xlsx","slam","TTR","quantmod","relimp","akima","memoise"))
ipak(packages)

@Bosmansc

This comment has been minimized.

Show comment
Hide comment
@Bosmansc

Bosmansc Sep 11, 2017

thanks a lot!

Bosmansc commented Sep 11, 2017

thanks a lot!

@greatschism

This comment has been minimized.

Show comment
Hide comment
@greatschism

greatschism commented Jan 8, 2018

Thanks

@buddy1987

This comment has been minimized.

Show comment
Hide comment
@buddy1987

buddy1987 commented Mar 5, 2018

Thanks

@Bharathreddy05

This comment has been minimized.

Show comment
Hide comment
@Bharathreddy05

Bharathreddy05 May 3, 2018

I am new to R.
We have a setup like, R (R is on Linux) is connected to SAP HANA. We have a request to install R-packages.
Packages: rJava,RODBC,RJDBC,DBI,monmlp,AMORE,pmml,XML,arules,caret,reshape,plyr,foreach,iterators,adabag,randomForest,ggplot2

Can some one please let us know, How to install them.
As far i know, To install R- packages - i need to download R-package and install them by using command : Ex:
install.packages("/tmp/R_binaries_gz/Rsolnp_1.16.tar.gz", repos=NULL, type="source")

Here are my question now:

  1. How to check package is installed or not in Linux.
  2. How to check list of packages installed in R-server - Linux.
  3. Where to check error logs.
  4. How to uninstall the R- package in Linux.
  5. Is this package saved in to File syste level or Database level. In our case Database is HANA.

Could some one be kind and help me here.

Bharathreddy05 commented May 3, 2018

I am new to R.
We have a setup like, R (R is on Linux) is connected to SAP HANA. We have a request to install R-packages.
Packages: rJava,RODBC,RJDBC,DBI,monmlp,AMORE,pmml,XML,arules,caret,reshape,plyr,foreach,iterators,adabag,randomForest,ggplot2

Can some one please let us know, How to install them.
As far i know, To install R- packages - i need to download R-package and install them by using command : Ex:
install.packages("/tmp/R_binaries_gz/Rsolnp_1.16.tar.gz", repos=NULL, type="source")

Here are my question now:

  1. How to check package is installed or not in Linux.
  2. How to check list of packages installed in R-server - Linux.
  3. Where to check error logs.
  4. How to uninstall the R- package in Linux.
  5. Is this package saved in to File syste level or Database level. In our case Database is HANA.

Could some one be kind and help me here.

@brentthorne

This comment has been minimized.

Show comment
Hide comment
@brentthorne

brentthorne Jun 28, 2018

I've been using this for a few years now and just though that it might be cool if there could be a version of this that uses install_github or any of the devtools::install_ for packages as I find myself using this most often for my work.

I will try and figure out how to do that but I don't have much time to dedicate to it which is why I am tossing the idea out here for anyone else to tackle if they think they can do it!

Agian, thank you @stevenworthington for speeding up my workflow with this function 😄

Cheers!

EDIT:

Well I procrastinated at work and made a version of this that does this now found here. I haven't tested it for options other than install_method = "github" and install_method = "base" so feel free to check it out and change it as needed!

brentthorne commented Jun 28, 2018

I've been using this for a few years now and just though that it might be cool if there could be a version of this that uses install_github or any of the devtools::install_ for packages as I find myself using this most often for my work.

I will try and figure out how to do that but I don't have much time to dedicate to it which is why I am tossing the idea out here for anyone else to tackle if they think they can do it!

Agian, thank you @stevenworthington for speeding up my workflow with this function 😄

Cheers!

EDIT:

Well I procrastinated at work and made a version of this that does this now found here. I haven't tested it for options other than install_method = "github" and install_method = "base" so feel free to check it out and change it as needed!

@AndreAlz

This comment has been minimized.

Show comment
Hide comment
@AndreAlz

AndreAlz Sep 10, 2018

Thanks bro!

AndreAlz commented Sep 10, 2018

Thanks bro!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment