Skip to content

Instantly share code, notes, and snippets.

View ian-whitestone's full-sized avatar
🐍
Exit code 143

Ian Whitestone ian-whitestone

🐍
Exit code 143
View GitHub Profile
@ian-whitestone
ian-whitestone / simulations.ipynb
Last active December 20, 2023 03:53
Code for the choosing your randomization unit post - https://ianwhitestone.work/choosing-randomization-unit/
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@ian-whitestone
ian-whitestone / a_a_sim.py
Last active February 16, 2021 02:15
Bayesian conversion test A/A simulations
import numpy as np
def bayesian_rate_comparison(
control_successes,
control_samples,
test_successes,
test_samples,
prior_a=0,
prior_b=0
):
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
@ian-whitestone
ian-whitestone / main.py
Last active May 3, 2021 12:54
Code for the "Testing SQL" blog post: http://ianwhitestone.work/testing-sql
import os
from jinja2 import Environment, meta, Template
import pandas as pd
from pandas.testing import assert_frame_equal
import pandas.io.sql as psql
import psycopg2
# All these constants would likely live in separate files
CONNECTION = psycopg2.connect(
@ian-whitestone
ian-whitestone / mode_confettis.js
Created January 17, 2023 16:42
Give the people confetti 🎉
<script src="https://cdn.jsdelivr.net/npm/canvas-confetti@1.4.0/dist/confetti.browser.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<div id="bottom_of_page">Thanks for scrolling to the bottom 🙌</div>
<div>Enjoy some confetti 🎉</div>
<script>
@ian-whitestone
ian-whitestone / query_tags.sql
Created February 23, 2023 14:11
Query tag with no node refs
{% macro set_query_tag() -%}
{# Start with any model-configured dict #}
{% set tag_dict = config.get('query_tag', default={}) %}
{# Regardless of resource type, we can always access the config via the 'model' variable #}
{%- do tag_dict.update(
dbt_snowflake_query_tags_version='1.1.3',
app='dbt',
dbt_version=dbt_version,
project_name=project_name,
@ian-whitestone
ian-whitestone / example_cte_query.sql
Created March 18, 2023 12:29
Example Snowflake CTE query
with sample_data as (
select *
from snowflake_sample_data.tpch_sf1.customer
),
nation_14_customers as (
select *
from sample_data
where c_nationkey = 14
),
with
warehouse_periods as (
select
warehouse_name,
timestamp as valid_from,
lead(timestamp) over (partition by warehouse_name order by timestamp asc) as valid_to,
event_name = 'RESUME_WAREHOUSE' as is_active
from snowflake.account_usage.warehouse_events_history
where
-- double check these names, can't remember exact values