Нужна помощь в переводе формулы матрицы в код Python - PullRequest
0 голосов
/ 16 января 2019

Я новичок в Python и мне нужна помощь в переводе следующих формул в код Python:

enter image description here

enter image description here

В настоящее время я работаю над этим, но почти без прогресса. Любые справочные материалы будут оценены по достоинству.

1 Ответ

0 голосов
/ 16 января 2019

Вот одна возможность. Некоторые из предположений в комментариях. Конечно, есть и другие способы сделать это. Размер набора в знаменателе второй формулы можно сделать проще, чем длину набора или списка, но мой способ избегает использования памяти для набора / списка и более согласуется с числителем.

def formula1(X, n, a, b):
    """Return the first formula for matrix X, size n, and indices a and b.
    """
    return sum(X[a][t] - X[b][t] for t in range(1, n+1)) / n

def formula2(X, n, i, j, x, y, a, P):
    """Return the second formula for matrix X, size n, indices i, j, x, and y,
    array or mapping a, array or mapping of sets P.
    """
    numer = sum(abs(X[i][t] - X[j][t])
                for t in range(1, n+1)
                if a[t] in P[x] or a[t] in P[y])
    denom = sum(1
                for t in range(1, n+1)
                if a[t] in P[x] or a[t] in P[y])
    return numer / denom
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...