我可以在Sqlalchemy中使用方法作为列吗?

时间:2017-02-13 09:22:53

标签: python sqlalchemy

def gap(group):
    return group[['date1', 'date2']].min(axis = 1) - \
        group.shift()[['date1', 'date2']].max(axis = 1)

def cluster(df, threshold):
    df['clusters'] = 0
    grouped = df.groupby('user_id')
    newdf = pd.DataFrame()
    for name, group in grouped:
        group = group.sort_values(['date1', 'date2'], ascending = True)
        group['gap'] = gap(group)
        cuts = group['gap'] > timedelta(threshold)
        df2 = group.copy()
        for g, d, r in zip(group.loc[cuts, 'gap'], group.loc[cuts, 'date1'], group.loc[cuts, 'date2']):
            df2.loc[((df2['date1'] >= d) & (df2['date2'] >= r)), 'clusters'] +=1
        df2 = df2.drop('gap', axis = 1)
        newdf = pd.concat([newdf, df2])
    return newdf

我希望当我保存用户时,将调用fullname并将返回值保存到db中的column fullname,并且在从数据库加载对象后将调用set_fullname。

我希望带有get / set方法的属性可以通过sqlalchemy配置为列

0 个答案:

没有答案