def continuous_sample(df, param):
    """
    Given a dataframe with index corresponding
    to parameter names and a column called "sampler"
    containing truncated normal sampler objects,
    return a sample from that parameter's distribution
    between its lower and upper bounds
    """
    
    return df.loc[param, 'sampler'].rvs(1)[0]