您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

为DataFrames创建我自己的方法(python)

为DataFrames创建我自己的方法(python)

如果您 确实 需要向中添加方法,则pandas.DataFrame可以从中继承。就像是:

import pandas as pd

class MyDataFrame(pd.DataFrame):
    def mymethod(self):
        """Do my stuff"""

from mymodule import *
df = MyDataFrame(np.random.randn(4,4))
df.mymethod()

pandas对数据帧执行操作时,通常会返回新的数据帧。因此,要保留数据框类,则需要在对pandas类的实例执行操作时返回类。可以通过提供如下_constructor属性来实现:

class MyDataFrame(pd.DataFrame):

    @property
    def _constructor(self):
        return MyDataFrame

    def mymethod(self):
        """Do my stuff"""

class MyDataFrame(pd.DataFrame):

    @property
    def _constructor(self):
        return MyDataFrame

df = MyDataFrame([1])
print(type(df))
df = df.rename(columns={})
print(type(df))

<class '__main__.MyDataFrame'>
<class '__main__.MyDataFrame'>
python 2022/1/1 18:40:15 有351人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶