我在ipython / scikit中构建了一个随机森林模型。
# Tune Random Forest
from sklearn.ensemble import RandomForestClassifier
model = RandomForestClassifier(n_estimators=500,n_jobs=-1)
# fit the model
model.fit(X, Y, sample_weight=sample_weight)
# predict probabilities
model_probs = model.predict_proba(X)
# break out only the event prob
event_probs = model_probs[:,1]
我能够运行交叉验证的准确度,精确度,召回率,F1分数和ROC / AUC图,但我想做的是创建一个图表,显示:
“当我预测事件的概率为0-10%时,该事件实际上发生了5%。对于预测的10-20%,它是15%.....对于90-100%,它是92%”< / p>
理想情况下,我的模型会显示一个完美的“阶梯”,表明我预测事件发生的可能性确实更高。
我已经能够用以下方式“收集”数据:
bins = pd.cut(event_probs,bins=10,labels=False)
但我不知道从哪里开始。
如何构建数据框/情节?