Skip to content

Instantly share code, notes, and snippets.

View tonglu's full-sized avatar

Tong tonglu

  • Avant
  • United States
View GitHub Profile
lift1 <- caret::lift(factor(test_data$dep_var) ~ model2.2.1_v3$predict(test_data), class = "1")
png("~/tmp/output/model2.2.1/validation_v3/lift_chart.png")
xyplot(lift1)
dev.off()
# rlist
# http://cran.r-project.org/web/packages/rlist/rlist.pdf
default <- list(a = 1, b = 2)
new <- list(b = 3)
list.merge(default, new) #new would overwrite default
list.join(default, new, "b")
# package::ff
# http://cran.r-project.org/web/packages/ff/index.html
# doing complicated operations on disk
git checkout somecommit #revert back to an older commit
git stash #stash changes
git checkout -b new_branch #spin off to a new branch
git stash pop # restore the changes to the new branch
git add .
git commit -a -m
git push origin new_branch
@tonglu
tonglu / multiplot.r
Created April 3, 2014 02:28
multiplot for ggplot
# Multiple plot function
#
# ggplot objects can be passed in ..., or to plotlist (as a list of ggplot objects)
# - cols: Number of columns in layout
# - layout: A matrix specifying the layout. If present, 'cols' is ignored.
#
# If the layout is something like matrix(c(1,2,3,3), nrow=2, byrow=TRUE),
# then plot 1 will go in the upper left, 2 will go in the upper right, and
# 3 will go all the way across the bottom.
#
@tonglu
tonglu / list_files_in_s3.r
Created January 31, 2014 19:10
get a list of files stored in s3
system(paste('s3cmd ls ', s3mpi:::s3path(), 'models/*', sep = ''), intern = TRUE)
@tonglu
tonglu / update_model_score.r
Last active December 30, 2015 09:58
update_model_score using new weekly data
restoreLevels <- function(datum, model_varnames, model_levels, klasses) {
#model_varnames = .GBM_model$var.names,
#model_levels = .GBM_model$var.levels,
#klasses = attr(.GBM_model$Terms, 'dataClasses')) {
grab_levels <- function(colname) {
level_index <- which(model_varnames == colname)
if (length(level_index) == 0) return(NULL)
model_levels[[level_index]]
}
.datum <<- datum
@tonglu
tonglu / null_to_na.r
Last active December 30, 2015 06:59
convert null to NA in R(for rubyread)
null_to_na <- function(obj) {
df <- as.data.frame(t(as.data.frame(lapply(lapply(obj, lapply, function(x)ifelse(is.null(x), NA, x)), unlist))))
rownames(df) <- NULL
df
}
dst <- rubyread('defaults_source_tier')
dst2 <- null_to_na(dst)
colnames(dst2) <- c('loan_id', 'dep_var', 'source', 'tier', 'created_at')
@tonglu
tonglu / lsos.r
Created December 4, 2013 18:40
lsos function
#http://stackoverflow.com/questions/1358003/tricks-to-manage-the-available-memory-in-an-r-session?rq=1
.ls.objects <- function (pos = 1, pattern, order.by,
decreasing=FALSE, head=FALSE, n=5) {
napply <- function(names, fn) sapply(names, function(x)
fn(get(x, pos = pos)))
names <- ls(pos = pos, pattern = pattern)
obj.class <- napply(names, function(x) as.character(class(x))[1])
obj.mode <- napply(names, mode)
obj.type <- ifelse(is.na(obj.class), obj.mode, obj.class)
obj.size <- napply(names, object.size)