如何解决我在Python中以矩阵方式计算SSE,它没有给我期望值,并且帽子矩阵H不对称且等幂吗?
它应该给出的SSE值为839.72,但是由Python中创建的函数计算的值为1595.311,当我测试矩阵H是对称且幂等的时,它不是。
np.dot() 函数的实现是否正确?
unittest.TestCase
数据为:
y = np.array(data['y']).reshape((-1,1))
x = np.array(data.iloc[:,1:5])
def sse(y,x):
n = y.shape[0]
I = np.identity(n)
yt = np.transpose(y)
xt = np.transpose(x)
H = x.dot(np.linalg.inv(xt.dot(x))).dot(xt)
sse = yt.dot(I-H).dot(y)
return sse
np.array_equal(H.T,H) # Return False
np.array_equal(H**2,H) # Return False
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。