Skip to content

Instantly share code, notes, and snippets.

@mattmcd
mattmcd / lib_install.py
Created March 20, 2018 17:27
Hook for AWS Lambda function to retrieve library files from S3 and add to local path in tmp directory
import boto3
import os
import sys
import zipfile
HERE = os.path.dirname(os.path.realpath(__file__))
def library_install():
"""Dynamically add libraries to path, retrieving from S3 if necessary
@mattmcd
mattmcd / kullback_leibler.py
Last active April 6, 2018 08:33
Kullback Leibler divergence between two Gaussians
import sympy as sp
x = sp.symbols('x', real=True)
p, q = sp.symbols('p q', positive=True)
KL = sp.Integral(p*sp.log(p) - p*sp.log(q), (x, -sp.oo, sp.oo))
mu, mu1, mu2 = sp.symbols('mu mu1 mu2', real=True)
sig, sig1, sig2 = sp.symbols('sig sig1 sig2', positive=True)
n = 1/sp.sqrt(2*sp.pi*sig**2)*sp.exp(-(x - mu)**2/(2*sig**2))
KL_n = sp.simplify(
KL.subs({p: n.subs({mu: mu1, sig: sig1}), q: n.subs({mu: mu2, sig: sig2})}).doit()
)
{
"verbs" : ["aggregate", "architect", "benchmark", "brand", "cultivate", "deliver", "deploy", "disintermediate",
"disrupt", "drive", "e-enable", "embrace", "empower", "enable", "engage", "engineer", "enhance",
"envisioneer", "evolve", "expedite", "exploit", "extend", "facilitate", "generate", "grow", "harness", "implement", "incentivize", "incubate", "innovate", "integrate",
"iterate", "leverage", "matrix", "maximize", "mesh", "monetize", "morph", "optimize", "orchestrate", "productize", "recontextualize", "redefine", "reintermediate",
"reinvent", "repurpose", "revolutionize", "scale", "seize", "strategize", "streamline", "syndicate", "synergize", "synthesize", "target",
"transform", "transition", "unleash", "utilize", "visualize", "whiteboard"],
"adjectives": ["24/365", "24/7", "B2B", "B2C", "back-end", "best-of-breed", "bleeding-edge", "bricks-and-clicks", "clicks-and-mortar",
"collaborative", "compelling", "cross-p
@mattmcd
mattmcd / print_sympy_expr.py
Created January 24, 2021 15:41
Printing a SymPy LaTeX expression to png e.g. for Markdown or Medium
from subprocess import run
import sympy as sp
def print_to_file(fname, expr):
# See https://tex.stackexchange.com/questions/34054/tex-to-image-over-command-line/34058#34058
t_start = r"""\documentclass[border=2pt]{standalone}
\usepackage{amsmath}
\usepackage{varwidth}
\begin{document}