У меня есть следующая матрица, в которой каждый элемент представляет вероятность определенного результата. ![enter image description here](https://i.stack.imgur.com/JKpde.jpg)
Количество голов хозяев поля указано по оси Y, а количество голов гостей - по оси X. Счет 0-0 составляет, например, 1,21, а счет 4-3 - 0,84. Я знаю, что вероятность домашнего выигрыша равна
np.sum(np.tril(match_score_matrix, -1))
Вероятность ничьей равна:
np.sum(np.diag(match_score_matrix))
Вероятность проигрыша равна:
np.sum(np.triu(match_score_matrix, 1)),
Теперь я хочу знать вероятность различий каждой цели. В этой матрице возможны следующие результаты различий целей [-6, -5, ..., 0, ..., 15). Как я могу написать цикл, который вычисляет вероятность каждого результата?
def get_probabilities(match_score_matrix, max_goals_home, max_goals_away):
return dict({'max_goals_away': np.something,
'-5', np.something,
'-4', np.something,
...
'0', np.diag(match_score_matrix)),
'1', np.something
...
'max_goals_home', np.something })
Как я могу написать это в простом в использовании цикле? Заранее спасибо!