如何解决如何对ANN的X和y值进行OneHotEncode?
我正在使用蘑菇特征数据集来确定蘑菇是否有毒。我建立的模型可以工作,但是我试图使用OneHotEncoder作为练习编码的方法。我知道我们必须实例化OneHotENcoder类,并fit_transform数据框。从那里,我们建立X和y值,并像往常一样建立模型。我遇到的麻烦是拟合X和y值。在下面的代码中,变量X出现错误:“找不到下落。”
from sklearn.preprocessing import OneHotEncoder
ohe = OneHotEncoder()
df = ohe.fit_transform(df.iloc[:,:])
ohe.categories_
X = df.drop('class',axis=1)
y = df['class']
X = ohe.fit_transform(X)
y = one.fit_transform(y)
我希望上面的代码对Xs和ys都进行编码,我想用它们来训练测试拆分并构建一个小的ANN。任何帮助将不胜感激。
解决方法
一个热编码器返回一个numpy数组而不是一个数据帧。
您应该首先删除目标列,然后应用一个热编码器。
exempt_cols = set(['class'])
categorical_cols = [col for col in df.columns if col not in exempt_cols]
X = df[categorical_cols]
X = ohe.fit_transform(X)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。