Skip to content

Instantly share code, notes, and snippets.

View dchiu911's full-sized avatar
👋

Derek Chiu dchiu911

👋
View GitHub Profile
@dchiu911
dchiu911 / update_renv_bioc.R
Created September 8, 2021 22:00
Update Bioconductor packages when R version is different
# make sure we have latest version of BiocManager
renv::install("BiocManager")
# read lockfile records
lockfile <- renv:::renv_lockfile_read("renv.lock")
records <- lockfile$Packages
# keep only packages from Bioconductor
bioc <- Filter(function(record) {
record$Source == "Bioconductor"
@dchiu911
dchiu911 / power_analysis.R
Created March 15, 2019 18:51
Power Analysis for Sensitivity and Specificity
# sensitivity >=0.9, specificity >= 0.8
# 80% power, 5% prevalence
library(MKmisc)
power.diagnostic.test(sens = 0.95, delta = 0.05, power = 0.8, prev = 0.05)
power.diagnostic.test(spec = 0.9, delta = 0.1, power = 0.8, prev = 0.05)
@dchiu911
dchiu911 / install_r_linux.sh
Last active May 25, 2018 21:52
Installing R 3.5.0 on Linux Centos 5.11
# 1a. Download R to shared directory
cd /share/data/apps/R
wget https://cran.r-project.org/src/base/R-3/R-3.5.0.tar.gz
tar -zxvf R-3.5.0.tar.gz
# 1b. Try to configure R, but fails due to outdated libraries
cd R-3.5.0
./configure F77=gfortran --enable-R-shlib --enable-memory-profiling
# 2. Download and compile zlib
@dchiu911
dchiu911 / upgrade_rversion.R
Last active January 9, 2024 22:48
Upgrade R version while minimizing package discrepancies
# In current R version ----------------------------------------------------
# install.packages("sessioninfo")
# Save info of installed packages from current R version
ip <- rownames(installed.packages(priority = "NA"))
# Save full metadata for packages with all dependencies available
pkg_info <- sessioninfo::package_info(pkgs = ip)
pkg_info$repository <- vapply(strsplit(pkg_info$source, " \\("), `[`, character(1), 1)
@dchiu911
dchiu911 / test_rfe.R
Created March 22, 2018 18:54
Testing RFE control elements
# Load packages
library(tidyverse)
library(caret)
library(microbenchmark)
library(splendid)
# Setup data
data(hgsc)
data <- hgsc
class <- as.factor(attr(hgsc, "class.true"))
@dchiu911
dchiu911 / get_racetime.R
Last active February 15, 2018 00:15
Estimate race running time
library(tidyverse)
library(measurements)
library(lubridate)
#' @param speed speed on treadmill
#' @param distance kilometres
get_racetime <- function(speed = 7.5, distance = 5) {
real_speed <-
as.numeric(as.period(
period(minute = 8, second = 0) - (speed - 7.5) * 10 * seconds(7),