python中的多元“二次”回归(类似于matlab中的fitlm函数)

时间:2017-04-05 12:37:41

标签: python matlab regression

我想问一下是否有人可以帮助我。 我想在python中创建5个输入变量的“二次”回归,并获得回归二次方程。

在matlab中我可以使用函数

fitlm(ds,'quadratic')

ds是一个nx5数组。 输出是(示例):

Linear regression model:
x6 ~ [Linear formula with 21 terms in 5 predictors]

估计系数:                     估计SE tStat pValue
                   ___________ __________ __________ __________

(Intercept)         3.8574       0.60766         6.348     2.296e-08
x1                  0.2847       0.26311        1.0821       0.28316
x2               0.0022534     0.0046868       0.48079       0.63226
x3              -0.0092632      0.010228       -0.9057       0.36839
x4              -0.0039061    0.00043497       -8.9802    4.7159e-13
x5               0.0014984    0.00061604        2.4323      0.017722
x1:x2            -0.004019     0.0014052       -2.8602     0.0056639
x1:x3          -1.1981e-05     0.0021956    -0.0054568       0.99566
x1:x4           0.00011539    0.00011732       0.98356       0.32893
x1:x5           0.00011744    0.00017357       0.67661       0.50102
x2:x3           1.6354e-06    4.3911e-05      0.037243        0.9704
x2:x4           2.9589e-06    2.3464e-06        1.2611       0.21173
x2:x5           3.0621e-06    3.4713e-06        0.8821       0.38092
x3:x4           2.2725e-06    3.6662e-06       0.61986       0.53749
x3:x5          -1.4034e-05    5.7374e-06        -2.446      0.017117
x4:x5           2.5923e-06    2.8928e-07        8.9614    5.0922e-13
x1^2              -0.14307      0.052186       -2.7415     0.0078616
x2^2           -4.5755e-05    2.2194e-05       -2.0616      0.043186
x3^2            2.5903e-05    5.4432e-05       0.47587       0.63574
x4^2            1.1868e-06    1.4496e-07        8.1874    1.2233e-11
x5^2           -2.1103e-05    6.8098e-07       -30.989    4.7528e-41

我怎么能在python中做同样的事情? 我尝试使用sklearn中的linear_model.LinearRegression()和PolynomialFeatures(),但它现在只返回了5个术语(线性的)。

我附上一些示例值。 第1-5行包含参数,Row6包含目标。

    x1      x2      x3     x4      x5     x6    
1.75    -2.5     76    1050      0      0.99
   1      10     84     900      0    1.1598
 1.5      10     84     900    100    1.2034
 1.5      10     68     900    100    1.3544
 1.5      10     84     900    200    0.8591
 1.5      10     84     900    200    0.8595
1.25    -2.5     76    1050    100     1.072
1.25    22.5     76     750    200    1.0426
   1      10     84     900    200    0.8588
1.25    -2.5     92     750    100    1.3811
1.25    22.5     92    1050    100    1.0213
   2      10     84     900      0    1.0336

非常感谢你!

问候! AF

0 个答案:

没有答案