Я подклассифицирую pandas DataFrame и хочу иметь атрибут.
class MyFrame(pd.DataFrame):
_metadata = ['myattr']
myattr = []
def __init__(self, *args, **kwargs):
pd.DataFrame.__init__(self, *args, **kwargs)
self.myattr.append(0)
@property
def _constructor(self):
return AutoData
Моя проблема в том, что myattr
является атрибутом класса.Когда я изменяю его в экземпляре моего класса, все экземпляры модифицируются:
mf2 = mf
mf2.myattr.append(1)
print(mf.myattr)
>>> [0, 1]
Но я хочу, чтобы атрибут был связан с его экземпляром.Другими словами, измените myattr
только для mf2
, но не для mf
.Спасибо.