Проблема в том, что X
и y
являются двухмерными:
>>> X
array([[1.9330627 ],
[0.19204405],
[0.21168505],
[0.65018234],
[0.83079548]])
>>> y
array([[8.60619212],
[6.09210226],
[5.33097283],
[5.71649684],
[5.18771916]])
Так corrcoef
думает
Каждая строка x представляет переменную, а каждый столбец - отдельное наблюдение всех этих переменных
(цитата из документов )
То, что вы можете сделать, это сгладить двумерное измерение:
>>> np.corrcoef(X.flatten(),y.flatten())
array([[1. , 0.84196446],
[0.84196446, 1. ]])
Или используйте rowvar=False
:
>>> np.corrcoef(X,y,rowvar=False)
array([[1. , 0.84196446],
[0.84196446, 1. ]])