цикл по элементам матрицы NumPy

Это также простое решение для кроссбраузеров:

var addEvent =  window.attachEvent||window.addEventListener;
var event = window.attachEvent ? 'onclick' : 'click';
addEvent(event, function(){
    alert('Hello!')
});

Вместо «щелчка» может быть любое событие, конечно.

0
задан HJA24 16 January 2019 в 20:55
поделиться

2 ответа

Рассмотрите возможность использования смещения в 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)}
0
ответ дан Parfait 16 January 2019 в 20:55
поделиться

Вы можете использовать np.diag , чтобы извлечь k -ю диагональ, а затем сложить ее.

{str(i):np.sum(np.diag(match_score_matrix,k=i)) for i in range(-15,8)}
0
ответ дан tch 16 January 2019 в 20:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: