У меня есть два массива, которые имеют формы N X T и M X T. Я хотел бы вычислить коэффициент корреляции через T между всеми возможными парами строк n и m (из n и m соответственно).
Какой самый быстрый, самый питонический способ сделать это? (Циклирование над n и m показалось бы мне не быстрым и не pythonic.) Я ожидаю, что ответ будет включать numpy и/или scipy. Прямо сейчас мои массивы numpy array s, но я открыт для их преобразования в другой тип.
Я ожидаю, что мой вывод будет массивом с формой N X M.
N.B. Когда я говорю "коэффициент корреляции", я имею в виду коэффициент корреляции момента продукта Пирсона.
Вот что нужно отметить:
- Функция
numpycorrelateтребует, чтобы массивы ввода были одномерными. - Функция
numpycorrcoefпринимает двумерные массивы, но они должны иметь одинаковую форму. - Функция
scipy.statspearsonrтребует, чтобы массивы ввода были одномерными.