gpt4 book ai didi

python - SciKitlearn ColumnTransformer TypeError : Cannot clone object. 你应该提供一个 scikit-learn estimator 的实例而不是一个类

转载 作者:行者123 更新时间:2023-12-04 01:23:04 32 4
gpt4 key购买 nike

尝试使用看起来像这样的东西:

  CATEGORY | NUMBER VALUE  | ID

FRUIT | 15 | XCD

VEGGIES | 12 | ZYK



from sklearn.preprocessing import LabelEncoder, OneHotEncoder
data = data.iloc[:,:].values
enc = LabelEncoder()
data[:,0]=enc .fit_transform(data[:,0])
data

输出:
array([[1, 15, 'XCD'],
[2, 12, 'ZYK']])

那么...
from sklearn.compose import ColumnTransformer
ct = ColumnTransformer(transformers=[('encode',OneHotEncoder,[0])],remainder='passthrough')
dataset = np.array(ct.fit_transform(data))


TypeError: Cannot clone object. You should provide an instance of scikit-learn estimator instead of a class.

最佳答案

我相信我解决了这个问题。 TypeError 是不言自明的,我很惭愧在发布我的问题之前没有认识到这一点。本质上,我只需要创建 OneHotEncoder 类的一个实例。添加如下代码所示的一行解决了我的情况。谢谢!

from sklearn.preprocessing import LabelEncoder, OneHotEncoder
from sklearn.compose import ColumnTransformer
oHe = OneHotEncoder()
ct = ColumnTransformer(transformers=[('encode',oHe,[0])],remainder='passthrough')
dataset = np.array(ct.fit_transform(data))

关于python - SciKitlearn ColumnTransformer TypeError : Cannot clone object. 你应该提供一个 scikit-learn estimator 的实例而不是一个类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62330259/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com