Как сохранить данные ленивых панд - PullRequest
0 голосов
/ 21 февраля 2019

Я использую следующий ленивый декоратор свойств для ленивой инициализации кадров данных pandas:

def lazy_property(fn):
    '''Decorator that makes a property lazy-evaluated.
    '''
    attr_name = '_lazy_' + fn.__name__

    @property
    def _lazy_property(self):
        if not hasattr(self, attr_name):
            print('getting db')
            setattr(self, attr_name, fn(self))
        return getattr(self, attr_name)
    return _lazy_property

Я использую его так:

class Data:

    @lazy_property
    def _SOME_DATAFRAME(self):
        return pd.read_csv(...)

Я хочу реализовать поведение такчто я могу как-то сохранить изменения в ленивых экземплярах данных.В идеале я хотел бы создать поведение, подобное self.__SOME_DATAFRAME.save().Есть ли способ, которым я могу реализовать это поведение?Может быть, через другого декоратора?

...