Я создал класс на основе объекта pandas.DataFrame
, который инициализируется файлом csv
, как показано здесь:
import pandas as pd
class CustomDataFrame(pd.DataFrame):
def __init__(self, input_file):
df = pd.read_csv(input_file)
super().__init__(df)
#...
Таким образом, у меня есть тип CustomDataFrame
, который имеет дополнительные специфическиеметоды оперировать собой.Проблема, с которой я столкнулся при этой настройке, состоит в том, что когда я беру часть объекта, он возвращает объект pandas.DataFrame
вместо того, чтобы сохранять тот же тип.Другими словами:
> blip = mypackage.CustomDataFrame('test.csv')
> type(blip)
mypackage.CustomDataFrame
> type(blip[1:3])
pandas.core.frame.DataFrame
Есть ли простой способ исправить мой пользовательский класс так, чтобы он мог работать над собой всеми способами, которые может pandas.DataFrame
, возвращая этот пользовательский класс каждый раз, а непросто встроенная версия DataFrame
?