Skip to content

Instantly share code, notes, and snippets.

Ivan Krukov ivan-krukov

  • Canada
Block or report user

Report or block ivan-krukov

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
import numpy as np
from collections import Counter, defaultdict
def __f(x, i, j):
'''Consume a state to generate a sequence of haplotypes picked'''
pairs = []
y = x.copy()
while True:
ivan-krukov /
Created Mar 20, 2018
Rename a bunch of files by zero padding
# create
for ((i = 1; i <= N; i++)); do
touch e-$i.csv
# rename
# note %04d - pad to 4 zeros
for ((i = 1; i <= N; i++)); do
ivan-krukov / .vimrc
Created Sep 20, 2017
vimrc for Vim 8
View .vimrc
" Plugins {{{
call plug#begin('~/.vim/plugged')
Plug 'scrooloose/nerdcommenter'
Plug '/usr/local/opt/fzf' | Plug 'junegunn/fzf.vim'
Plug 'christoomey/vim-tmux-navigator'
Plug 'chriskempson/base16-vim'
Plug 'sheerun/vim-polyglot'
Plug 'fatih/vim-go'
Plug 'SirVer/ultisnips'
Plug 'scrooloose/nerdtree'
View index.html
<!DOCTYPE html>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>Elementary observables</title>
<script src=""></script>
<button id='error'>Will throw</button>
View bootstrap.R
# bootstrap.R
cat("Loading packages\n")
cat("Loading data\n")
View Default.sublime-keymap
// Align
{ "keys": ["super+.", "super+a"], "command": "alignment" },
// Surround
{ "keys": ["super+.", "super+s", "super+s"], "command": "surround_selection"},
{ "keys": ["super+.", "super+s", "super+d"], "command": "surround_delete"},
{ "keys": ["super+.", "super+s", "super+c"], "command": "surround_change"},
// Expand selection
{ "keys": ["super+shift+'"], "command": "expand_selection_to_quotes"},
{ "keys": ["super+shift+;"], "command": "expand_selection", "args": {"to": "scope"}},
ivan-krukov /
Created Sep 5, 2016
Metropolis Beamer theme framesubtitle

Metropolis framesubtitle

This is an attempt to have frame subtitle support for the Metropolis Beamer theme. Since there is no native support in the theme itself, this is somewhat of a hack.

This adds an extra beamercolorbox, equivalent to a frametitle box, but with a different name.

ivan-krukov / grep_operator.Rmd
Last active Jun 7, 2016
Simpler logical subsetting by strings with `grep`
View grep_operator.Rmd
```{r, echo=FALSE}
# `%grep%` operator
Using `R`'s built-in `grep` function is really inconvenient for interactive work.
There already exists a convenient `%in%` operator for testing membership in a sequence.
However, real data analysis rarely presents with well-defined sequences.
Strings are much more common.
ivan-krukov /
Last active Apr 27, 2016
Get ENSEMBL IDs for a given KEGG pathway


For a given KEGG pathway, we want to get a list of all the genes. Ensembl IDs are convenient here.

KEGG provides a REST API for some tasks, but is far from complete. For example, it is possible to map from KEGG to NCBI IDs, but not to Ensembl IDs.

The implementation peforms the following steps:

ivan-krukov /
Last active Mar 30, 2019
Show opencv image in ipython notebook
import cv2
import urllib.request
# Will use matplotlib for showing the image
from matplotlib import pyplot as plt
# Plot inline
%matplotlib inline
# For local images, read as usual
You can’t perform that action at this time.