给定一个简单的 CSV 文件:
A,B,C
Hello,Hi,0
Hola,Bueno,1
显然,真实数据集比这个复杂得多,但这个数据集可以重现错误。我正在尝试构建一个随机森林分类器,代码如下:
cols = ['A','B','C']
col_types = {'A': str, 'B': str, 'C': int}
test = pd.read_csv('test.csv', dtype=col_types)
train_y = test['C'] == 1
train_x = test[cols]
clf_rf = RandomForestClassifier(n_estimators=50)
clf_rf.fit(train_x, train_y)
但是当我调用fit()函数时,我只得到了这个回溯(traceback):
ValueError: could not convert string to float: 'Bueno'
scikit-learn的版本为0.16.1。
df['zipcode'] = df['zipcode'].astype('category')
? - LeMarque