Если метод corrcoef получает два массива x и y, он складывает их (по вертикали, если rowVar имеет значение True, по горизонтали, если rowVar имеет значение False). В источнике:
if y is not None:
y = array(y, copy=False, ndmin=2, dtype=dtype)
if not rowvar and y.shape[0] != 1:
y = y.T
X = np.vstack((X, y))
С точки зрения статистики, он считает, что A имеет 64 переменных (в столбцах, поскольку rowVar имеет значение false), а B - 36. Их складывание дает вам 100 переменных, следовательно, корреляционная матрица 100 на 100.
Матрица корреляции всегда симметрична (и положительно полуопределена). Если вам нужны корреляции только между переменными x и y, они находятся в недиагональном блоке размером 64 на 36: извлеките его с нарезкой. Вот структура вывода:
corr(x, x), size 64 by 64 | corr(x, y), size 64 by 36
---------------------------+---------------------------
corr(y, x), size 36 by 64 | corr(y, y), size 36 by 36
person
Community
schedule
20.10.2017