Python类从pandas数据框中选择功能

时间:2018-03-02 14:18:38

标签: python pandas

我正在围绕特定数据集编写一个包装类,该数据集将表示为pandas数据框。大约有15列。我希望用户能够在课程构建时选择他们想要的列。每列都是通过调用类中的方法构建的,即 def calculate_feature1():。我正在考虑为每一列创建一个布尔构造函数参数,但我想知道是否有更好的模式。

class MyCoolDFWrapper:

    def __init__(include_feature_1=True, include_feature_2=True, etc ...)

    def calc_feature_1():
        pass

    ...

    def calc_feature_n():
        pass

    def get_data(self):
        return self.df[ " go calculate list of features they wanted to include " ]

可以改进吗?

1 个答案:

答案 0 :(得分:2)

你可以使用像这样的纯关键字参数:

def my_function(arg1, **kwargs)

您传递给my_function的任何参数都将放在字典kwargs中。您可以在运行时查看函数中字典的内容。

因此,你可以给它你想要的15个布尔参数,或者只是一个包含你想要的列的整数数组,并且你可以调用你的函数。但问题是,你真的需要15个函数来计算这些特征吗?