2 回答

TA贡献1811条经验 获得超5个赞
考虑使用 偏移在np.diagonal。因为对角线是当主客队之间的进球数相等时,向上偏移是客队比主队高一球时的概率。相反,当主队比客队高一球时,向下偏移是概率。因此,将两个概率相加。
# AWAY ONE GOAL HIGHER
np.sum(np.diagonal(match_score_matrix, offset=1))
# HOME ONE GOAL HIGHER
np.sum(np.diagonal(match_score_matrix, offset=-1))
# AWAY TWO GOALS HIGHER
np.sum(np.diagonal(match_score_matrix, offset=2))
# HOME TWO GOALS HIGHER
np.sum(np.diagonal(match_score_matrix, offset=-2))
...
# AWAY MAX GOALS HIGHER USING array.shape
np.sum(np.diagonal(match_score_matrix, offset=match_score_matrix.shape[0]))
# HOME MAX GOALS HIGHER USING array.shape
np.sum(np.diagonal(match_score_matrix, offset=-match_score_matrix.shape[0]))
对于您需要的字典,请使用字典理解
def get_probabilities(match_score_matrix, max_goals_home, max_goals_away):
# DICTIONARY COMPREHENSION
return {str(i): np.sum(np.diagonal(match_score_matrix, offset=i)) for i in range(-15,15)}
添加回答
举报