Skip to content

Instantly share code, notes, and snippets.

View laserson's full-sized avatar

Uri Laserson laserson

View GitHub Profile
Schema 1
num_files 15002
num_seqs 7051351620
sequence,locus,stop_codon,vj_in_frame,v_frameshift,productive,rev_comp,complete_vdj,v_call,d_call,j_call,sequence_alignment,germline_alignment,sequence_alignment_aa,germline_alignment_aa,v_alignment_start,v_alignment_end,d_alignment_start,d_alignment_end,j_alignment_start,j_alignment_end,v_sequence_alignment,v_sequence_alignment_aa,v_germline_alignment,v_germline_alignment_aa,d_sequence_alignment,d_sequence_alignment_aa,d_germline_alignment,d_germline_alignment_aa,j_sequence_alignment,j_sequence_alignment_aa,j_germline_alignment,j_germline_alignment_aa,fwr1,fwr1_aa,cdr1,cdr1_aa,fwr2,fwr2_aa,cdr2,cdr2_aa,fwr3,fwr3_aa,fwr4,fwr4_aa,cdr3,cdr3_aa,junction,junction_length,junction_aa,junction_aa_length,v_score,d_score,j_score,v_cigar,d_cigar,j_cigar,v_support,d_support,j_support,v_identity,d_identity,j_identity,v_sequence_start,v_sequence_end,v_germline_start,v_germline_end,d_sequence_start,d_sequence_end,d_germline_start,d_germline_end,j_sequence_start,j_sequence_end,j_
@laserson
laserson / toggle_caffeinate.fish
Created March 7, 2024 02:28
fish script to toggle MacOS `caffeinate`
#! /usr/bin/env fish
set target_pids (pgrep caffeinate)
set num_pids (count $target_pids)
if test $num_pids -eq 0
caffeinate -d -t 43200
else
for target_pid in $target_pids
kill $target_pid
@laserson
laserson / test_robot.py
Created March 29, 2018 20:31
Manually grab tips with opentrons
from opentrons import robot, containers, instruments
robot.connect(robot.get_serial_ports_list()[0])
robot.home()
tiprack200 = containers.load('tiprack-200ul', 'C2')
trash = containers.load('point', 'D2')
p200 = instruments.Pipette(axis='a',
max_volume=200,
min_volume=20,
@laserson
laserson / opentrons_container_fix.py
Last active March 30, 2018 02:23
Fix for containers file to reorder based on wells.
import json
from copy import deepcopy
from itertools import product
from collections import OrderedDict
all_wells = ['{}{}'.format(r, c) for c in range(1, 13) for r in 'ABCDEFGH']
with open('_containers_create.json.bak','r') as ip:
obj = json.load(ip)
@laserson
laserson / update_airtable.py
Created March 26, 2018 22:46
Update Airtable records from Excel metadata
import pandas as pd
from airtable import airtable
metadata = pd.read_table(metadata_path, sep=',', header=0, index_col=None)
at = airtable.Airtable(base_id, api_key)
ibd_records = at.get('sample', filter_by_formula='AND(project = "cho-ibd", phenotype = "")')['records']
for record in ibd_records:
if (metadata.local_sample == record['fields']['sample_id']).sum() != 1:
@laserson
laserson / README.md
Created September 28, 2017 18:51
Transfer mail from Outlook for Mac to Gmail

Drag and drop desired messages to directories (e.g., archived/).

Convert directory to mbox file

./eml2mbox.py archived archived.mbox

Follow directions here to upload via Gmail API

https://github.com/google/import-mailbox-to-gmail
package com.cloudera.science.throwaway;
public class ThrowAway {
private String datum = "Howdy!";
public ThrowAway() { }
public String response() {
return "Goodbye!";
}
import org.bdgenomics.formats.avro.AlignmentRecord
import org.bdgenomics.adam.rdd.ADAMContext._
val bamFile = "/Users/laserson/repos/adam/adam-core/src/test/resources/artificial.sam"
val reads = sc.adamLoad[AlignmentRecord, Nothing](bamFile)
reads.first()
/*
java.lang.IncompatibleClassChangeError: Implementing class
at java.lang.ClassLoader.defineClass1(Native Method)
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-33-9be617700fcd> in <module>()
6 t = ax.plot(times, events, lw=1, c=random_color())
7 ax.set_yscale('log')
----> 8 IPython.core.pylabtools.print_figure(fig)
/usr/lib/python2.6/site-packages/IPython/core/pylabtools.pyc in print_figure(fig, fmt)
108 fmt = 'png'
109 fig.canvas.print_figure(bytes_io, format=fmt, bbox_inches='tight',
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.