继承熊猫,修改自我

问题描述

假设您有一个 DataFrame 对象,其中包含一些多行和多列数据。然后,您可以轻松地将其分配给自身以修改对象。例如:

test = test.iloc[0:10,:]

将仅保留原始数据集的前10行。

当我用多个继承将Pandas子类化时,我正在尝试复制这种行为。例如:

class data(pd.DataFrame,time,series):
    
    def __init__(self,*args,**kwargs):
        super(data,self).__init__(*args,**kwargs)

    @property
    def _constructor(self):
        return data

其中 time series 是提供其他方法的类。在这里,只有系列是相关的:

class series(object):

    def __init__(self):
        super(series,**kwargs)

    def keep10rows(self):
        self = self.iloc[0:10,:]
        return self

现在,我创建一个新的类实例

test = data()

现在我们可以用一些数据填充 test 了。如果我申请:

result = test.keep10rows()

在这里结果将看起来正确。但是, test.data 并未更改。为什么?如何实现对象内部数据的更改?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)