Skip to content

Instantly share code, notes, and snippets.

Daniel Harasim dharasim

Block or report user

Report or block dharasim

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
View parsetree.jl
module TreeFromString
using PEG
import Base: show
struct Tree{T}
val ::T
children ::Vector{Tree{T}}
end
@dharasim
dharasim / bootstrap.py
Created Apr 11, 2019
2-sample bootstrap test in python
View bootstrap.py
def bootstrap_test(higher, lower, n=100000):
xs = higher
ys = lower
m = np.mean(xs) - np.mean(ys)
zs = np.concatenate((xs,ys))
boots = np.random.choice(ys, size=(n,len(zs)))
return np.sum(np.mean(boots[:,0:len(xs)], 1) - np.mean(boots[:,len(xs)+1:], 1) > m)
# test whether the mean of the array `higher` is higher than the mean of the array `lower`
def bootstrap_pvalue(higher, lower, n=100000):
@dharasim
dharasim / index.html
Last active Feb 19, 2019
Pitch Class Barplot
View index.html
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Vega Lite Barplot</title>
<!-- Import Vega 4 & Vega-Lite 3 (does not have to be from CDN) -->
<script src="https://cdn.jsdelivr.net/npm/vega@4"></script>
<script src="https://cdn.jsdelivr.net/npm/vega-lite@3.0.0-rc12"></script>
@dharasim
dharasim / CompoundDistributions.jl
Created Feb 7, 2019
Compound Distributions in Julia
View CompoundDistributions.jl
module CompoundDistributions
using StatsFuns.RFunctions: betarand, gammarand
using SpecialFunctions: lbeta
using LogProbs
# distribution types
export BetaBern, DirMul, DirCat, UniCat, CatDist, ChineseRest
# conditional distribution type
@dharasim
dharasim / example_plot.jl
Last active Dec 12, 2018
VegaLite plots in Julia
View example_plot.jl
df = DataFrame(x=randn(500), y= randn(500))
df |> vlplot(
mark = :point,
encoding = (
x = (field=:x, typ=:quantitative),
y = (field=:y, typ=:quantitative)
)
)
View julia_tools.jl
partial(f, args...) = let args = args; (more...) -> f(args..., more...) end
@dharasim
dharasim / fibs.jl
Created Aug 13, 2018
Fibs iterator in Julia v1.0
View fibs.jl
using Base.Iterators: take
import Base: iterate, IteratorSize, eltype
struct Fibs end
iterate(::Fibs, (i, j) = (1, 1)) = i, (j, i+j)
IteratorSize(::Type{Fibs}) = Base.IsInfinite()
eltype(::Type{Fibs}) = Int
# collect the first ten fibs in an array
View using_seaborn_in_julia.jl
import Seaborn
import Pandas
# convert julia dataframe into a pandas dataframe
panda(df) = Pandas.DataFrame(Dict(n => df[n] for n in names(df)))
View compounds.jl
using StatsFuns.RFunctions: betarand, gammarand
using LogProbs
function categorical_sample(tokens, weights)
x = rand() * sum(weights)
cum_weights = zero(eltype(weights))
for (t, w) in zip(tokens, weights)
cum_weights += w
if cum_weights > x
return t
@dharasim
dharasim / unzip_in_julia.jl
Last active Mar 22, 2018
generic unzip function in julia
View unzip_in_julia.jl
"""
unzip(iter)
unzip an iterable object of indexable objects
"""
function unzip(iter)
ntuple(length(first(iter))) do i
map(iter) do indexable
getindex(indexable, i)
end
You can’t perform that action at this time.