def _predict(self, treenode, X):
"""
predict a single sample
note that X is a tupe(index,pandas.core.series.Series) from df.iterrows()
"""
if treenode.is_leaf:
return treenode.leaf_score
elif pd.isnull(X[1][treenode.feature]):
if treenode.nan_direction == 0:
return self._predict(treenode.left_child, X)
else:
return self._predict(treenode.right_child, X)
elif X[1][treenode.feature] < treenode.threshold:
return self._predict(treenode.left_child, X)
else:
return self._predict(treenode.right_child, X)
评论列表
文章目录