Я пытаюсь придумать модель, которая оптимизирует ожидаемое количество голов в футбольном матче.Я разделил матч на 4 части времени.Начальная вероятность того, что две команды (T1 и T2) забьют или не забьют гол, указана и остается неизменной в каждой временной части.Предполагается, что только один гол может быть забит за часть времени.Для каждой временной части мне нужно обработать и построить матрицу распределения для оценки (T1, T2 или Нет цели) до конца временной части.Вышеприведенные матрицы (v ^ 0 и v ^ 1) показывают изменение от временной части 0, заданную вероятность в начале совпадения, а v ^ 1 - распределение от начала до конца временной части 1 (v ^ 1),Полученные вероятности будут использоваться для сравнения коэффициентов, данных в начале матча со ставкой.
import pandas as pd
data = {'Score': ['Goal 0', 'Goal 1', 'Goal 2', 'Goal 3'],
'Goal 0': [0.97,0.02,0,0], 'Goal 1': [0.01,0,0,0],
'Goal 2': [0,0,0,0], 'Goal 3': [0,0,0,0]}
df = pd.DataFrame(data, columns = ['Score', 'Goal 0', 'Goal 1', 'Goal 2', 'Goal 3'])
v = df.drop('Score', axis=1).as_matrix()
В конце первой части времени моя матрица должна выглядеть следующим образом:
v^1 = ([0.9409, 0.0097, 0.0001, 0],
[0.0194, 0.0005, 0, 0],
[0.0004, 0, 0, 0],
[0, 0, 0, 0]])
А вот код, который я использовал, но безрезультатно.
def sweep(v_1):
for i in range(4):
for j in range(4):
v_tmp = np.zeros_like(v_K)
if i == 0: v_tmp[i,j] = v_k[i, j-1] * 0.02
if j == 0: v_tmp[i,j] = v_k[i-1, j] * 0.01
else:
v_tmp[i,j] = (v_k[i-1, j]) * 0.02 + (v_k[i, j]) * 0.97 + (v_k[i, j-1]) * 0.01
for i in range(4):
sweep(v_1)