python - 缺少 1 个必需的位置参数:在此上下文中为“TransformerMixin”
问题描述
我正在使用有关泰坦尼克号的数据集。但是当我执行管道时,它是一个TypeError
. 这是我的代码:
from sklearn.base import BaseEstimator, TransformerMixin
class DataFrameSelector(BaseEstimator, TransformerMixin):
def __init__(self, attribute_names):
self.attribute_names = attribute_names
def fit(self, X, y=None):
return self
def transform(self, X):
return X[self.attribute_names]
from sklearn.pipeline import Pipeline
try:
from sklearn.impute import SimpleImputer # Scikit-Learn 0.20+
except ImportError:
from sklearn.preprocessing import Imputer as SimpleImputer
num_pipeline = Pipeline([
("select_numeric", DataFrameSelector(["Age", "SibSp", "Parch", "Fare"])),
("imputer", SimpleImputer(strategy="median")),
])
但是,我收到以下错误:
TypeError: Traceback (most recent call last)
<ipython-input-22-4cae5bb1ad60> in <module>()
7
8 num_pipeline = Pipeline([
----> 9 (("select_numeric", DataFrameSelector(["Age", "SibSp", "Parch", "Fare"])),
10 ('label_binarizer', MyLabelBinarizer())
11 ("imputer", SimpleImputer(strategy="median")),)
TypeError: DataFrameSelector() missing 1 required positional argument: 'TransformerMixin'
解决方案
推荐阅读
- php - 从 PHP 中的 dateTime 获取日期
- google-chrome - 为什么我无法将 .babylon 文件导入到 babylon JS?
- python - 试图将二进制字符串转换为十进制,计算不正确,我不明白为什么
- python - 从 CSV 文件中读取大数字时,pandas 将其推断为字符串
- javascript - 如何配置 jQuery 事件在触发之前不传播
- sql - SQL 列到文本框(来自 ComboBox)
- css - 在悬停时使用字母间距保持宽度
- sql - 如何重置表格中的编号?
- botframework - 适用于 B2B 的 Azure 机器人服务
- html - 更改行背景图像宽度而不影响行的最大宽度