Skip to content

Instantly share code, notes, and snippets.

View ivan-krukov's full-sized avatar
🗃️
Getting there

Ivan Krukov ivan-krukov

🗃️
Getting there
View GitHub Profile
@ivan-krukov
ivan-krukov / index.html
Created June 30, 2017 16:45
Elementary observables // source https://jsbin.com/xekubas
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<title>Elementary observables</title>
</head>
<body>
<script src="https://unpkg.com/@reactivex/rxjs@5.0.3/dist/global/Rx.js"></script>
<button id='error'>Will throw</button>
@ivan-krukov
ivan-krukov / bootstrap.R
Last active June 5, 2017 19:23
Volcano plots
# bootstrap.R
cat("Loading packages\n")
library(tidyverse)
library(RefFreeEWAS)
library(qvalue)
cat("Loading data\n")
load("pdat.merge.rdata")
load("betas.rdata")
[
// 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
ivan-krukov / grep_operator.Rmd
Last active June 7, 2016 00:16
Simpler logical subsetting by strings with `grep`
```{r, echo=FALSE}
library(magrittr)
```
# `%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
ivan-krukov / README.md
Last active April 27, 2016 21:53
Get ENSEMBL IDs for a given KEGG pathway

Problem

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
ivan-krukov / multinomial.cpp
Created April 21, 2016 15:11
Generating multinomial random variates via the binomial conditional method
#include <vector>
#include <numeric>
#include <random>
using namespace std;
template <typename T>
T sum(vector<T> v) {
return accumulate(v.begin(), v.end(), 0.0);
}
@ivan-krukov
ivan-krukov / print_vector.cpp
Created April 19, 2016 21:56
Print vectors in C++, easy as `cout << vector << endl`
template <typename T>
ostream &operator<<(ostream &os, const vector<T> &v) {
os << "[";
typename vector<T>::const_iterator it;
for (it = v.begin(); it != v.end() - 1; ++it) {
os << *it << ", ";
}
os << *(it) << "]";
return os;
}
@ivan-krukov
ivan-krukov / R_ify.R
Created March 30, 2016 16:18
Use dots instead of dollar signs in R
# Use dots (.) instead of ($)
R_ify <- function(expr) eval(parse(text=
gsub("\\.","$",substitute(expr))))
R_ify(mtcars.mpg)
@ivan-krukov
ivan-krukov / clone_all.sh
Last active March 17, 2016 03:34
Clone all repos for a given user
#Get repo list, filter git urls
GITHUB_NAME=octocat
curl https://api.github.com/users/$GITHUB_NAME/repos > github_response
for repo in `cat github_response | jq -r '.[] | .git_url'`; do;
git clone $repo;
done
@ivan-krukov
ivan-krukov / matplot.R
Created December 9, 2013 20:00
Matrix plotting in R
#this is a simple way to plot a matrix from a txt file
mat_data_frame=read.table("data.txt",header=F)
#rev is there to start plotting M(0,0) in the upper left corner
#col=rainbow(10) uses the rainbow color palette. You can find other ones here:
#http://stat.ethz.ch/R-manual/R-devel/library/grDevices/html/palettes.html
image(as.matrix(rev(mat_data_frame)),col=rainbow(10))