使用类对数据帧进行操作

2024-05-29 06:19:27 发布

您现在位置:Python中文网/ 问答频道 /正文

在我的项目中,使用类非常有意义:

  • 该类将包含重复使用的时间序列数据
  • 它将具有在这些时间序列上运行并多次调用的方法/函数

问题是,我想使用熊猫数据帧作为时间序列容器(在某些情况下,它将是一个一次性序列-熊猫的序列,在其他情况下是多个时间序列-熊猫的数据帧),并且我在使用ing类返回和操作Padas数据帧时遇到问题

我已经阅读了这个主题,但我找不到一个优雅而简单的解决方案。你能帮忙吗

我已经准备了一个关于时间序列的数据帧操作的简化示例

class MyClass:

    def __init__(self, my_dataframe, time_series_type):
        self.my_dataframe = my_dataframe
        self.time_series_type = time_series_type

def returns(self):
    r = self.my_dataframe.pct_change()
    r = r.fillna(0, inplace = True)
    return r #returns Panda's DataFrame

def rebase_to_1(self):
    rebase_to_1 = self.returns + 1
    rebase_to_1 = rebase_to_1.cumprod()
    return rebase_to_1 #returns Panda's DataFrame

应用示例:

a = MyClass(my_time_series1)
b = MyClass(my_time_series2)

#Show rebased time-series/PadasDataFrame in Jupiter notebook
a.rebase_to_1()

我有相当多的函数,我正试图把它们放在类中,以简化对时间序列的操作。我希望上面的例子足以说明这一点


Tags: to数据函数selfdataframetimemydef

热门问题