【发布时间】:2022-11-28 21:26:17
【问题描述】:
我有大约 10 列离散数据的数据集,我很难将它们转换为可以执行机器学习的形式
我能够以这种方式转换仅包含 YES/NO 值的一列:
le = LabelEncoder()
X['ABC'] = le.fit_transform(X['ABC'])
看起来还可以
但是,如果我有不同于 YES/NO 的东西,例如具有 10 个不同值的本地化,我只有错误
from sklearn.feature_extraction import FeatureHasher
h = FeatureHasher(n_features=)
D = [{'dog': 1, 'cat':2, 'elephant':4},{'dog': 2, 'run': 5}]
f = h.transform(D)
f.toarray()
我尝试使用 featurehasher,但我不确定这是否是个好主意,我更改了示例代码以从列中获取数据,但出现信息错误:输入只能是字典
我也试过类似的东西:
ct = ColumnTransformer(transformers=[('encoder', OneHotEncoder(), [1])], remainder='passthrough')
X = np.array(ct.fit_transform(X))
X
但它也不起作用
有人可以给我一些提示或链接以获得好的教程吗?找了很多但是好像都不符合我的情况
【问题讨论】:
标签: python pandas machine-learning scikit-learn column-tansformer