0
您是否知道如何將第一部分放入函數的其餘部分以獲得迴歸分析。使用來自csv的數據進行多元迴歸的Python函數
import numpy as np
import matplotlib.pyplot as plt
from numpy import *
from matplotlib.pyplot import * #for the graph
data = np.genfromtxt('bookingdata.csv', delimiter = ',')
tvst = data[1:,][:,1]
cntime = data[1:,][:,2]
brate = data[1:,][:,3]
ppvwst = data[1:,][:,4]
import statsmodels.api as sm
def reg_m(tvst, cntime,brate,ppvwst):
ones = np.ones(len(cntime[0])
X = sm.add_constant(np.column_stack((x[0], ones)))
for ele in x[1:]:
X = sm.add_constant(np.column_stack((ele, X)))
results = sm.OLS(y, X).fit()
return results
並且所有的變量都被加載爲變量tvst,cntime等。同樣所有的變量都是數字。現在
最終目標是獲得一個多變量回歸像
OLS Regression Results
==============================================================================
Dep. Variable: y R-squared: 0.535
Model: OLS Adj. R-squared: 0.461
Method: Least Squares F-statistic: 7.281
Date: Tue, 19 Feb 2013 Prob (F-statistic): 0.00191
Time: 21:51:28 Log-Likelihood: -26.025
No. Observations: 23 AIC: 60.05
Df Residuals: 19 BIC: 64.59
Df Model: 3
==============================================================================
coef std err t P>|t| [95.0% Conf. Int.]
------------------------------------------------------------------------------
x1 0.2424 0.139 1.739 0.098 -0.049 0.534
x2 0.2360 0.149 1.587 0.129 -0.075 0.547
x3 -0.0618 0.145 -0.427 0.674 -0.365 0.241
const 1.5704 0.633 2.481 0.023 0.245 2.895
Omnibus: 6.904 Durbin-Watson: 1.905
Prob(Omnibus): 0.032 Jarque-Bera (JB): 4.708
Skew: -0.849 Prob(JB): 0.0950
Kurtosis: 4.426 Cond. No. 38.6
什麼似乎並沒有工作? – DyZ
我將我的csv文件加載到python中,作爲變量tvst(依賴)和centime,brate,ppvwst(獨立)。現在我想對模型進行多元迴歸測試,輸出如上所示。我完全失去了我如何才能做到這一點。 –
'add_constant'與添加一列相同。任何一個都是多餘的。 – user333700