---
# System prepended metadata

title: Lab Management Log

---

# Lab Management Log
### Nov 18 2019

## R request from Professor Andre Bonfrer
### Install R Package into Users Folder
1. Check the lib Paths:
> \> .libPaths()
2. Set the user folder as package installation path:
> \> .libPaths("H:/R")  

_before setting, please make sure the folder **exists** and located in a path with **permission**_   

3. install packages:
> \> install.packages("xxx")

### High-Performance and Parallel Computing with R
#### parallel Package:   

[Parallel Processing in R](http://dept.stat.lsa.umich.edu/~jerrick/courses/stat701/notes/parallel.html)  
Code Example:  

**Only sockets with parLapply appoarch works on windows**

> \> .libPaths("H:/R")  
> \> library(parallel)  
> \> numCores <- detectCores()  
> \> numCores ## Show the number of cores  
> \> f <- function(x){} ## Pre-define your function  
> \> cl <- makeCluster(numCores) ## Create a cluster  
> \> clusterEvalQ(cl, .libPaths("H:/R")) ## for each cluster, relocate the lib path to your path  
> \> install.packages("lme4") ## install packages you would like to include  
> \> clusterEvalQ(cl, library(lme4)) ## load packages for clusters before you use them  
> \> save <- parLapply(cl, data, f) ## run your function with parLapply  
> \> stopCluster(cl) ## stop cluster

**Each Cluster is created from nothing, so even though you already loaded packages in your current R session, you still need to load them in cluster setting**
