Skip to content

Instantly share code, notes, and snippets.

Avatar

evalparse xiaodaigh

View GitHub Profile
@xiaodaigh
xiaodaigh / julia-slow-serialization.jl
Created Sep 13, 2019
Julia serialization is dog-slow
View julia-slow-serialization.jl
using JDF
using CSV, DataFrames
using Serialization:serialize,deserialize
using BufferedStreams
@time a = CSV.read("C:/Users/ZJ.DAI/Documents/git/format-wars/data/Performance_2016Q4.txt", delim = '|', header = false);
io = BufferedOutputStream(open("c:/data/bin.bin","w"))
@time serialize(io, a)
close(io)
View example_rayshader_4walls_hole.r
library(rayshader)
library(av)
library(future)
plan(multiprocess)
# set up an elevation matrix with a wall around the outside and a gap on each of
# the walls.
elmat1 = matrix(0, 500, 500)
elmat1[1:100, 1:200] = 3000
@xiaodaigh
xiaodaigh / ok.r
Created Mar 12, 2019
3d sun around a pole
View ok.r
library(rayshader)
library(av)
elmat1 = matrix(0, 500, 500)
elmat1[200:400, 200:400] = 971.0
sunangle = 33
for(sunangle in 140:360) {
elmat1 %>%
sphere_shade %>%
add_shadow(ray_shade(elmat1,zscale=3,maxsearch = 300, sunangle = sunangle),0.5) %>%
View cpu_bitonic_sort.jl
shared = rand(16)
bisort(shared) = begin
NUM = UInt(length(shared))
k = UInt(2)
while (k <= NUM)
j = div(k,2)
while(j >=1)
for tid in UInt(0):UInt(NUM-1)
@xiaodaigh
xiaodaigh / benchmark_2048.jl
Created Oct 15, 2018
2048 Simulation challenge
View benchmark_2048.jl
using StatsBase
const DIRS = [:left, :up, :right, :down]
function init_game()
grid = zeros(Int8,4,4)
grid[rand(1:4),rand(1:4)] = rand2_1()
grid[rand(1:4),rand(1:4)] = rand2_1()
grid
end
@xiaodaigh
xiaodaigh / ctree_kmeans_iris_model_assessment
Created Oct 15, 2017
ctree vs kmeans on the iris dataset
View ctree_kmeans_iris_model_assessment
# data prep ---------------------------------------------------------------
library(data.table)
data(iris)
iris_copy <- copy(iris)
setDT(iris_copy)
iris_copy_ctree <- copy(iris_copy)
# ctree model -------------------------------------------------------------
@xiaodaigh
xiaodaigh / 1_forwardflag.r
Last active Dec 20, 2017
Fast implementation of binary (true/false) forward looking flag
View 1_forwardflag.r
forwardflag <- function(bools, ...) {
if(typeof(bools) != "boolean") {
warning("input variable not of boolean type, the only other accepted type is 0 & 1")
}
forwardflag_(bools, ...)
}
forwardflag_ <- function(bools, period = 12) {
stopifnot(period > 0)
View infix.r
`infix_fn` <- function(left, right) {
#...some code
}
@xiaodaigh
xiaodaigh / feeatherc.r
Created Aug 28, 2017
Some R to read .feather data chunkwise
View feeatherc.r
# featherc
library(data.table)
library(feather)
library(future)
library(dplyr)
plan(multiprocess)
options(future.globals.maxSize = Inf)
split_feather <- function(feather_file, by = NULL, parts = parallel::detectCores()) {
system.time(inputdata <- feather::read_feather(feather_file))