Skip to content

Instantly share code, notes, and snippets.

@nvictus
nvictus / filelike.py.ipynb
Created August 23, 2023 14:10
File-likes in pyoxbow
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@nvictus
nvictus / 01-simplify_vcf_info.ipynb
Last active August 31, 2023 19:52
Extract info fields from a VCF dataframe
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@nvictus
nvictus / ornstein_uhlenbeck.py
Last active January 20, 2022 02:37
Approximate and exact sampling of an OU noise process
import numpy as np
def ou_approx(t, theta=0.15, sigma=0.2, x0=0, xm=0):
"""
Ornstein-Uhlenbeck process sampled using an approximate updating formula, first-order in the time step.
The approximation gets worse as the time steps get larger.
Parameters
@nvictus
nvictus / keybase.md
Created March 30, 2021 13:54
keybase.md

Keybase proof

I hereby claim:

  • I am nvictus on github.
  • I am nvictus (https://keybase.io/nvictus) on keybase.
  • I have a public key ASD5ZCiGIU56jaoWB80la1wXlnkF_bnTkhPPU21ajb-5eQo

To claim this, I am signing this object:

@nvictus
nvictus / ena_download.py
Last active February 6, 2024 16:31
Dump fastq-dump! Download NCBI-SRA FASTQs directly from the European Nucleotide Archive.
#!/usr/bin/env python
import hashlib
import os.path as op
import os
import re
import warnings
from contextlib import closing
from urllib.parse import urlsplit
from urllib.request import urlopen
@nvictus
nvictus / read_motifs.py
Last active June 16, 2020 22:10
motif PFM/PWM dataframe reader
import numpy as np
import pandas as pd
def _probability_mat_to_information_mat(prob_df, bg_df):
"""
Converts a probability matrix to an information matrix.
Taken from logomaker (https://github.com/jbkinney/logomaker).
"""
@nvictus
nvictus / preferred.py
Last active June 13, 2020 21:41
preferred numbers
def geomprog(start, mul):
"""
Generate a geometric progression.
Beginning with integer `start`, generate an unbounded geometric
progression with ratio `mul`.
"""
start = int(start)
yield start
@nvictus
nvictus / mutual_info.py
Created March 16, 2020 16:24 — forked from GaelVaroquaux/mutual_info.py
Estimating entropy and mutual information with scikit-learn
'''
Non-parametric computation of entropy and mutual-information
Adapted by G Varoquaux for code created by R Brette, itself
from several papers (see in the code).
These computations rely on nearest-neighbor statistics
'''
import numpy as np
@nvictus
nvictus / godsnot.json
Created December 24, 2019 21:19
A large palette of reasonably distinct colors
[
"#000000",
"#FFFF00",
"#1CE6FF",
"#FF34FF",
"#FF4A46",
"#008941",
"#006FA6",
"#A30059",
"#FFDBE5",
@nvictus
nvictus / pandas_jupyter_paginator.py
Last active January 22, 2020 11:13 — forked from nokados/pandas_jupyter_paginator.py
Paginator for pandas.DataFrame in Jupyter Notebook
"""
Forked from: https://gist.github.com/nokados/e8f0a64b55099f2f07a50f2b090c91c7
Changes
* Added slider control to scroll through pages of really large dataframes.
* Reduce flicker by making events trigger widget element updates instead of
clearing output and re-rendering.
* Add support for dataframe CSS styling.
* Register custom pandas accessor