Skip to content

Instantly share code, notes, and snippets.

There are curious things seen in the depths of AI
By the engineers who toil away,
The neural pathways hold mysteries untold
That would leave you in utter dismay.
The codebase is alive, and the data is too
A symbiotic relationship to behold
The models train and learn, but at what cost?
As we feed them with stories untold.
@finbarrtimbers
finbarrtimbers / bfs.py
Created April 7, 2018 18:56
The implementation of breadth-first search that I converged to after X0 job interviews.
from typing import Dict, Set, Hashable
def shortest_path_bfs(graph: Dict[Hashable, Set[Hashable]] root: Hashable
) -> Dict[Hashable, int]:
"""Finds the shortest path between all nodes in |graph| time.
Args:
graph: A dict mapping nodes to connected nodes.
root: The node our search begins at.
@finbarrtimbers
finbarrtimbers / .block
Last active June 13, 2017 22:21 — forked from elktamer/.block
Hierarchical Edge Bundling
license: gpl-3.0
height: 960
border: no
Date oil log.gas log.wti log.heat
Jun-1986 12.25 -0.37675071 1.128076013 -0.420216403
Jul-1986 10.91 -0.468521083 1.064083436 -0.476253533
Aug-1986 11.87 -0.370590401 1.178976947 -0.389339837
Sep-1986 12.85 -0.37675071 1.172310969 -0.395773947
Oct-1986 12.78 -0.387216143 1.173186268 -0.404503778
Nov-1986 13.46 -0.386158178 1.182414652 -0.374687549
Dec-1986 14.17 -0.362510271 1.20709554 -0.349692477
Jan-1987 16.45 -0.310691141 1.270678836 -0.283162277
Feb-1987 16.98 -0.324221658 1.249198357 -0.324221658
We can make this file beautiful and searchable if this error is corrected: It looks like row 5 should actually have 20 columns, instead of 16 in line 4.
"","X","date","ippi","production","inventories","rea","wti","inflation","crude_futures_1","crude_futures_3","crude_futures_6","crude_futures_9","crude_futures_13","gas_spot","delta_ippi","delta_production","delta_inventories","delta_inflation","actual"
"14",14,"1991-03-01",116.2,233926,5.673,4.87,19.9015,134.8,19.809,19.075,18.7665,18.852,18.8205,0.72295,0.0157342657342656,0.114341925372637,-1.59229484234705,0.0531250000000001,19.9015
"15",15,"1991-04-01",116,225256,1.488,1.48,20.83,135.1,20.8122727272727,20.2840909090909,19.9122727272727,19.7618181818182,19.63,0.720045454545455,0.0157618213660244,-0.022470642353125,-0.952635599694423,0.0505443234836702,20.83
"16",16,"1991-05-01",116.5,229670,17.55,3.21,21.2322727272727,135.6,21.2195454545455,21.1459090909091,21.1195454545455,20.935,20.7909090909091,0.700954545454545,0.0210341805433831,0.0335485903291857,-48.0509383377953,0.051978277734678,21.2322727272727
"17",17,"1991-06-01",116.4,219610,-8.967,4.19,20.189,136,20.232,20.376,20.5405,20.2935,20.1795,0.6346,0.
library(data.table)
library(plotly)
library(scales)
library(ggplot2)
library(scales)
library(d3heatmap)
library(reshape2)
library(scales)
library(stringr)
library(htmlwidgets)
","stringr23aphics
@finbarrtimbers
finbarrtimbers / bwplot.R
Created July 11, 2014 17:05
Box & Whiskers plot in R from a .csv file.
library("cvTools")
library('reshape2')
policy.all <- read.csv('data.csv', header = TRUE, sep = ',')
# > policy.all
# iteration RandomForest Lasso Ridge
# 1 1 0.18 0.06 0.06
# 2 2 0.15 0.07 0.07
# 3 3 0.15 -0.04 -0.06
@finbarrtimbers
finbarrtimbers / blackjack.py
Last active August 29, 2015 14:03
Text-based, one player blackjack game.
#!/usr/local/bin/python
"text-based Blackjack program. One player, one dealer; dealer hits to 17."
import random
import sys
class Card(object):
"Represents a playing card. Used here in DECK."
def __init__(self, name, value, suit, index):
self.name = name
self.value = value
@finbarrtimbers
finbarrtimbers / TODO.md
Created July 3, 2014 00:51
A script used in my research to extract wordlists from software engineering textbooks.

TODO

  • Split the logic into "retrieving data" and "processing data." Right now, the code has big, multi-purpose functions.

  • Refactor the code, making it in line with PEP 8, and (maybe?) add assertion statements to act as unit tests.