Skip to content

Instantly share code, notes, and snippets.

View mparker2's full-sized avatar

Matthew Parker mparker2

View GitHub Profile
@mparker2
mparker2 / collapse_eventalign.py
Created November 29, 2021 10:28
Collapse event level f5c to kmer level
import itertools as it
from functools import partial
from multiprocessing import Pool
import numpy as np
import pandas as pd
import click
EA_TYPES = {
'contig': str,
import re
from argparse import ArgumentParser
parser = ArgumentParser()
parser.add_argument("-g", "--gtf-file", help="Input gtf file",
required=True)
parser.add_argument("-o", "--output-prefix", required=True,
help="Prefix of the ouput file")
def get_gtf_attribute(gtf_record, attribute):
@mparker2
mparker2 / novel_junc_count.py
Last active May 30, 2018 09:31
Count and classify novel splice junctions for diffSplice
import sys
from collections import Counter
from functools import partial
import numpy as np
import pandas as pd
import pysam
import click
def load_bams(bam_fns):
@mparker2
mparker2 / cluster.py
Last active June 27, 2022 13:26
some numpy functions for dynamic time warping
import numpy as np
from scipy.spatial.distance import cdist
from .dtw import dtw
from .lb import envelope, lb_keogh_cdist, lb_keogh_from_bounds
from .window import window_ts
def dtw_nearest_neighbours(query, db, bound_reach, step_size, subseq=False):
assert query.ndim == 1
assert db.ndim == 2
assert query.flags.contiguous
@mparker2
mparker2 / group_umis.py
Created May 5, 2017 09:22
Create clusters of probable PCR duplicates in FASTQ using Unique Molecular Identifiers
import sys
from random import shuffle
from collections import Counter, defaultdict
import pysam
import click
import networkx as nx
def edit_distance(umi_a, umi_b):
'''
@mparker2
mparker2 / qdre.py
Last active November 3, 2017 12:49
kill sge jobs with regex patterns
import sys
import os
import re
import argparse
import subprocess
from bs4 import BeautifulSoup
from pandas import to_datetime
def check_pattern(job, pattern):