代码如下:
import numpy as np
# x是一个行向量
x = np.array([1, 3, 564, 675, 6567]).reshape(1, -1)
# y1、y2都是行向量
y1 = np.array([1, 3, 555555, 675, 6567]).reshape(1, -1)
y2 = 2*x+4
# 两个行向量拼接到一起,形成一个两行的矩阵
x_y1 = np.r_[x, y1]
x_y2 = np.r_[x, y2]
# 注意使用np.corrcoef求相关系数时
# 求取得到的是任意两行的相关系数构成的相关系数矩阵
# 所以一定要把想求的两个向量分别放在不同的行,而不是列
c_x_y1 = np.corrcoef(x_y1)[0, 1]
print(c_x_y1)
# 由于y2 = 2*x+4,相关系数c_x_y2必定等于1
c_x_y2 = np.corrcoef(x_y2)[0, 1]
print(c_x_y2)
输出结果为
-0.18724527057600632
1.0
see also: