SKLearn的Random Forest的最简单例子(csv数据文件)

其实网上这方面的教程已经很多了,例如这里: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)
就简单记录这么多。

猜你喜欢

转载自blog.csdn.net/qysh123/article/details/79728679
今日推荐