rename to txt as it is easier to edit in text editor

This commit is contained in:
dchakro 2022-07-08 15:07:45 +03:00
parent eaecaf95f1
commit 8a2f625bf4

190
r.snippets.txt Normal file
View file

@ -0,0 +1,190 @@
## Collection of my shared R snippets:
# Author: https://dchakro.com
# Github: https://github.com/dchakro
# Code us provided as is, without any warranty.
snippet beginr
## Description: ${1:Describe}
`r paste("# <-", format(Sys.time(), "%a, %b %d, %Y @ %H:%M"), "->\n")`
rm(list = ls())
gc()
library(data.table)
${0}
snippet comment_date
`r paste("#", date(), "------------------------------\n")`
${0}
snippet rmObject
rm(list=ls()[!ls() %in% c("${1:Obj1}","${2:Fun2}")])
${0}
snippet rmColumn
${1:DF}[,!colnames(${1}) %in% ${2:columnsToRemove}]
${0}
snippet mat
matrix(${1:data}, nrow = ${2:rows}, ncol = ${3:cols})
${0}
snippet elif
if (${1:condition}) {
${0}
} else if (${2:condition}) {
${0}
} else {
${0}
}
snippet fun
${1:name} <- function(${2:variables}) {
## Description:
## Input:
## Output:
${0}
}
snippet readData
myDT <- data.table::fread(file = ${1:fileName},
sep = "${2:delimiter}",
skip = 0,
header = F,
stringsAsFactors = F,
showProgress = T,
nThread = `r as.integer(system(command = "sysctl -n hw.physicalcpu", intern = T))`)
${0}
snippet gsubstitute
gsub("${1:Find}","${2:Replace}",${3:variable}, fixed = T)
${0}
snippet replaceText
regmatches(${1:String}, gregexpr(pattern="${2:Find}", text =${1}, fixed = T) <- "${3:newText}"
${0}
snippet not%
'%nin%' <- Negate('%in%')
${1:var1} %in% ${2:var2}
snippet split
data.table::as.data.table(stringi::stri_split_fixed(str = ${1:String},
pattern = "${2:pattern}",
simplify = T))
${0}
snippet find_matches
regmatches(${1:String}, gregexpr(pattern="${2:Find}",text =${1}, fixed = T)
${0}
snippet roundUp
source("https://raw.githubusercontent.com/dchakro/shared_Rscripts/master/roundUp.R")
roundUp(x = ${1:999}, to = ${2:10})
${0}
snippet ggtheme
library(ggplot2)
source('https://raw.githubusercontent.com/dchakro/ggplot_themes/master/DC_theme_generator.R')
customtheme <- DC_theme_generator(type = "L")
${0}
snippet ggarea
ggplot(data=${1:longDF}, aes(x=${2:orderedVar2}, y=${3:plottingValue})) +
geom_area(alpha=1, color="black", aes(fill=${4:fill.order}), position=position_fill(reverse = T)) +
ylab("Percentage of total")
${0}
snippet percentScale
scale_y_continuous(breaks = seq(0, 1, by=0.25),labels = paste((seq(0, 1, by = .25)*100), "%", sep=""))
snippet foreach
library(doParallel)
myCluster <- makeCluster(4, type = "FORK",useXDR=F,.combine=cbind)
print(myCluster)
registerDoParallel(myCluster)
results <- foreach(mut = ${1:items},.combine = cbind, .inorder = F) %dopar% {
# Description: ${2:Describe}
# Code for process
# Returning values
return(list(var1, var2))
}
stopCluster(myCluster)
${0}
snippet multiplePlots
## Multiple plots made in parallel and compiled into a grid
myplots <-
parallel::mclapply(
X = ${1:parameters},
FUN = function(i)
plottingFunction(subDT = DF[, c(1, i)]),
mc.cores = parallel::detectCores()
)
ggplot2::ggsave(
filename = "${2:fileName}.pdf",
plot = gridExtra::marrangeGrob(myplots,
layout_matrix = matrix(data = 1:16, nrow = 4, ncol = 4, byrow = T),
as.table = F),
width = ${3:width},
height = ${4:height} )
${0}
# Customized tryCatch block
snippet tryc
tryCatch(expr = {
# Code that can throw and error
}, error = function (e){
message("Error Message")
# Actions to take
}, finally = {
print("Great Success!!")
})
snippet installPackages
to_install <- c("${1:pack1}") ## Set packages to install here and run
if (unname(Sys.info()["sysname"]) == "Darwin") {
CPU_cores <- as.integer(system(command = "sysctl -n hw.physicalcpu", intern = T))
## For logical cores:
# CPU_cores <- system("sysctl -n hw.ncpu")
} else if (unname(Sys.info()["sysname"]) == "Linux") {
CPU_cores <- as.integer(system(command = "nproc", intern = T))
}
utils::setRepositories(ind = c(1, 2, 3))
missing_packages <-
to_install[!(to_install %in% installed.packages()[, "Package"])]
if (length(missing_packages))
install.packages(missing_packages, type = "source", INSTALL_opts = "--byte-compile", Ncpus = CPU_cores)
rm(missing_packages, to_install, CPU_cores)
${0}
snippet bench
bmark <- microbenchmark(
"${1:method1}" = {
# Describe actions
}
},
"${2:method2}" = {
# Describe actions
}
}, times = 5 )
source("https://raw.githubusercontent.com/dchakro/shared_Rscripts/master/summarySE.R")
DF <- summarySE(bmark,measurevar = "time",groupvars = "expr",statistic = "mean")
${0}
snippet parallelRDS
source('https://gist.githubusercontent.com/dchakro/8b1e97ba6853563dd0bb5b7be2317692/raw/parallelRDS.R')
${0}
rm(readRDS.gz,saveRDS.gz,writeRDS,loadRDS)