首页 > 解决方案 > 有人可以解释一下这个 python 管道语法吗

问题描述

  1. 我对这个管道中的每个函数到底做了什么感到有点困惑。有人可以解释这个管道是如何工作的吗?我大致知道如何做,但一些澄清会非常有帮助。

  2. 为什么在 def 中使用大写“X” transform(self, X)

  3. get_feature_names具体有什么意义__init__

代码:

class custom_fico(BaseEstimator,TransformerMixin):
    
        def __init__(self):
            self.feature_names = ['fico']
    
        def fit(self,x,y=None):
            return self
    
        def transform(self,X):
            k = X['FICO.Range'].str.split('-',expand = True).astype(float)
            fico = 0.5 * (k[0] + k[1])
            return pd.DataFrame({'fico':fico})
    
        def get_feature_names(self):
            return self.feature_names

标签: pythonpandasnumpyscikit-learndata-science

解决方案


1-试试这个链接。对理解一切非常有帮助,它使一切变得清晰。https://medium.com/@shivangisareen/pipelining-in-python-7edd2382f67d

2-我认为没有必要使用大写 X。我认为您可以使用其他任何东西并且仍然可以工作,但在这种情况下,代码编写者只是选择了大写 x。

3- 最后一点,init方法类似于 C++ 和 Java 中的构造函数。构造函数用于初始化对象的状态。构造函数的任务是在创建类对象时对类的数据成员进行初始化(赋值)。

如果您需要任何进一步的帮助,社区随时为您服务!


推荐阅读