我想计算给定数据的最小二乘估计.
有几种方法可以做到这一点,一种是使用numpy的最小二乘:
import numpy
np.linalg.lstsq(X,y)[0]
Run Code Online (Sandbox Code Playgroud)
其中X是矩阵和ya兼容维度的向量(float64类型).第二种方法是使用公式直接计算结果:
import numpy
numpy.linalg.inv(X.T.dot(X)).dot(X.T).dot(y)
Run Code Online (Sandbox Code Playgroud)
我的问题:有些情况下,不同的公式给出截然不同的结果(尽管可能没有区别).有时使用一个公式,系数变得非常大,而另一个公式表现得更好.公式是一样的,那么为什么结果会如此分歧呢?这是某种类型的舍入错误,我该如何最小化它?
Matplotlib已开始在没有请求的情况下将彩虹线绘制到X轴.有时它仍然绘制正常的情节,但往往没有.
import numpy
import matplotlib
G=numpy.zeros(100)
for i in range(50):
G[i+50]=50-i
matplotlib.pyplot.plot(G)
Run Code Online (Sandbox Code Playgroud)
导致此行为的原因是什么?我如何永久关闭它?我安装了最新版本的matplotlib,运行python 3.6,anaconda发行版4.5.5.