【发布时间】:2015-01-13 00:15:58
【问题描述】:
我想从从 csv 创建的 pandas 数据框创建一个类。使用@staticmethod 是最好的方法吗?这样我就不必为每个对象分别读取数据帧
【问题讨论】:
我想从从 csv 创建的 pandas 数据框创建一个类。使用@staticmethod 是最好的方法吗?这样我就不必为每个对象分别读取数据帧
【问题讨论】:
您不需要@staticmethod。每当您创建类的实例时,您都可以传递 pandas DataFrame:
class MyClass:
def __init__(self, my_dataframe):
self.my_dataframe = my_dataframe
a = MyClass(my_dataframe)
b = MyClass(my_dataframe)
此时,a 和 b 都可以访问您传递的 DataFrame,您不必每次都读取 DataFrame。您可以从 CSV 文件中读取一次数据,创建 DataFrame 并根据需要构建任意数量的类实例(它们都可以访问 DataFrame)。
【讨论】:
我认为您可以在第一个实例中创建数据框
a = MyClass(my_dataframe)
然后复制一份
b = a.copy()
那么b独立于a
【讨论】: