其实网上这方面的教程已经很多了,例如这里:https://blog.csdn.net/CherDW/article/details/54971771 就讲得很不错,不过往往大家的例子都比较复杂,我这里仅仅举一个最简单的例子,帮助大家快速测试结果:
import pandas as pd from sklearn.ensemble import RandomForestClassifier from sklearn import metrics #导入训练数据,这里的训练数据使用Under-Sampling处理过的 train= pd.read_csv('train-balance.csv') target='bug' IDcol='name' print train['bug'].value_counts() #去掉ID和属性列 x_columns = [x for x in train.columns if x not in [target,IDcol]] X = train[x_columns] y = train['bug'] #训练Random Forest rf0 = RandomForestClassifier(oob_score=True, random_state=10) rf0.fit(X,y) print rf0.oob_score_ #导入测试数据,和训练数据一样的处理方法 test=pd.read_csv('test.csv') x_test_columns = [x for x in test.columns if x not in [target,IDcol]] X_test=test[x_test_columns] y_test=test['bug'] #输出在测试数据上的AUC值 y_predprob = rf0.predict_proba(X_test)[:,1] print "AUC Score (Test): %f" % metrics.roc_auc_score(y_test,y_predprob)就简单记录这么多。