Skip to content

Instantly share code, notes, and snippets.

View achad4's full-sized avatar

Avi Chad-Friedman achad4

View GitHub Profile
now = datetime.now()
start = now.replace(day=1, hour=0, minute=0, second=0, microsecond=0)
start = start + timedelta(days=31)
stop = start + timedelta(days=30 * 36)
synth_certs = pd.DataFrame()
for dt in rrule.rrule(rrule.MONTHLY, dtstart=start, until=stop):
#THE SEASONALITY CURVE IS MEASURED (in SQL) DIRECTLY FROM OUR DATA
cohort_size = (
cert_ramp_seasonality_df[
SELECT
lease_dim_id,
reporting_month AS simulated_default_month
FROM
(
--
SELECT
*,
ROW_NUMBER() OVER(PARTITION BY certificate_dim_id ORDER BY (RANDOM() * COALESCE(perc_losses_expected+in_month,0)) DESC) AS rnk
FROM ll_fact_lease_ts ts
now = datetime.now()
start = now.replace(day=1, hour=0, minute=0, second=0, microsecond=0)
start = start + timedelta(days=31)
stop = start + timedelta(days=30 * 36)
synth_certs = pd.DataFrame()
for dt in rrule.rrule(rrule.MONTHLY, dtstart=start, until=stop):
#THE SEASONALITY CURVE IS MEASURED (in SQL) DIRECTLY FROM OUR DATA
cohort_size = (
cert_ramp_seasonality_df[
now = datetime.now()
start = now.replace(day=1, hour=0, minute=0, second=0, microsecond=0)
start = start + timedelta(days=31)
stop = start + timedelta(days=30 * 36)
synth_certs = pd.DataFrame()
for dt in rrule.rrule(rrule.MONTHLY, dtstart=start, until=stop):
#THE SEASONALITY CURVE IS MEASURED (in SQL) DIRECTLY FROM OUR DATA
cohort_size = (
cert_ramp_seasonality_df[
@achad4
achad4 / gist:d3d08364a1e197b77b5da9b292affffa
Created July 12, 2021 17:29
Python code to generate synthetic lease data and simulate lifecycles from pre-trained model
now = datetime.now()
start = now.replace(day=1, hour=0, minute=0, second=0, microsecond=0)
start = start + timedelta(days=31)
stop = start + timedelta(days=30 * 36)
synth_certs = pd.DataFrame()
for dt in rrule.rrule(rrule.MONTHLY, dtstart=start, until=stop):
#THE SEASONALITY CURVE IS MEASURED (in SQL) DIRECTLY FROM OUR DATA
cohort_size = (
cert_ramp_seasonality_df[