def numeric_columns(df, include_dates=True):
    """ provide a list of columns that are float64,int64 or datetime64"""
    scope = ['int64', 'float64']
    if include_dates:
        scope.append('datetime64[ns]')
    return [X for X in df.columns if str(df[X].dtypes) in scope]