【问题标题】:Multi-variate regression using NumPy in Python?在 Python 中使用 NumPy 进行多变量回归?
【发布时间】:2011-02-17 11:23:32
【问题描述】:

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

文档here 表明确实如此,但我找不到有关该主题的更多详细信息。

【问题讨论】:

    标签: python regression


    【解决方案1】:

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

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

    【讨论】:

    • 我目前正在使用 R,但我正在考虑只使用 python 进行计算,以便于共享。
    • 它不再起作用(我将其更改为符合 Python 3,所以它运行了;但是第一次测试使 Python 解释器崩溃,没有错误消息)。有人知道怎么更新吗?
    【解决方案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]
    

    【讨论】:

      【解决方案3】:

      您可能想查看scipy.optimize.leastsq 函数。这相当复杂,但我似乎记得当我想做多元回归时,我会考虑这样做。 (时间久了,可能记错了)

      【讨论】:

        猜你喜欢
        • 2016-04-28
        • 1970-01-01
        • 1970-01-01
        • 2017-09-19
        • 1970-01-01
        • 1970-01-01
        • 2016-04-19
        • 2016-07-21
        • 1970-01-01
        相关资源
        最近更新 更多