【发布时间】:2021-06-26 16:34:51
【问题描述】:
我正在尝试将 Sklearn (0.24.1) Labelencoder 应用于数据集,其中一些列将文本和数字混合在一起。
dataset.csv
filename1, cat, dog, elephant, hamster, 1, 7, 8, 4, 10
filename2, hamster, dog, lizard, 7, 5, 3, 8, 19, 1
filename3, raccoon, 8, 10, 11, 14, 15, 16, 3, 23
filename4, turtle, cat, lizard, bird, fish, 6, 2, 4, 11
filename5, bird, donkey, 5, 2, 8, 2, 6, 7, 3
我正在尝试将所有动物名称转换为数值。下面是我正在尝试使用的代码。
input_file = "dataset.csv"
df = pd.read_csv(input_file, header = 0)
numDF = OneHotEncoder().fit_transform(df)
但是当我运行它时,我得到了错误:
TypeError: Encoders require their input to be uniformly strings or numbers. Got ['float', 'str']
【问题讨论】:
标签: scikit-learn sklearn-pandas