从 pandas 数据框中选择特征的 Python 类

标签 python pandas

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

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 " ]

这个可以改进吗?

最佳答案

您可以使用纯关键字参数,如下所示:

def my_function(arg1, **kwargs)

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

因此,您可以为其提供您想要的 15 个 bool 参数,或者只是一个包含您想要的列的整数数组,并基于该数组您可以调用您的函数。但我想问的是,你真的需要 15 个函数来计算特征吗?

关于从 pandas 数据框中选择特征的 Python 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49071007/

相关文章:

python-pandas read_excel 为 index_col 获取错误的数字

python - 如何查找每月(全年)的最大金额

python - Try-except 未知功能?

python - Opencv imshow在macOS 11.0.1(Big Sur)上使python启动器崩溃

python - pickle 转储 Pandas DataFrame

python - 使用 .groupby 和 .transform 进行聚合

python - 构建带有行的 Pandas 数据框,条件是它们不存在于另一个数据框python中

python - 如何在Python中释放内存

python - Django:TemplateDoesNotExist at/login/(源不存在)

python - 从给定的纸牌中检测并直接返回