在Python中使用NumPy进行多元回归?

时间:2010-05-09 22:54:28

标签: python regression

是否可以使用NumPy在Python中执行多变量回归?

文档here表明它是,但我找不到关于该主题的更多详细信息。

3 个答案:

答案 0 :(得分:3)

是的,请从http://www.scipy.org/Cookbook/OLS?action=AttachFile&do=get&target=ols.0.2.py

下载此http://www.scipy.org/Cookbook/OLS

或者您可以安装R和python-R链接。 R可以任何

答案 1 :(得分:2)

您链接的网页提到numpy.linalg.lstsq以查找向量x 最小化|b - Ax|。以下是如何使用它的一个小例子:

首先我们设置一些“随机”数据:

import numpy as np
c1,c2 = 5.0,2.0
x = np.arange(1,11)/10.0
y = c1*np.exp(-x)+c2*x
b = y + 0.01*max(y)*np.random.randn(len(y))
A = np.column_stack((np.exp(-x),x))
c,resid,rank,sigma = np.linalg.lstsq(A,b)
print(c)
# [ 4.96579654  2.03913202]

答案 2 :(得分:1)

您可能需要查看scipy.optimize.leastsq功能。它相当复杂,但我似乎记得当我想做多元回归时,我会想到的东西。 (已经有一段时间了,所以我可能会错误记念)