最后一次輸出執(zhí)行有錯(cuò)
哪位大神幫我看一下那個(gè)地方出錯(cuò)了
***********************************************
import numpy as np
from numpy.linalg import inv
from numpy import dot
from numpy import mat
import pandas as pd;
dataset = pd.read_csv('data.csv')
#print(dataset)
temp = dataset.iloc[:,2:5]
temp['X0']=1? ? #截距
X=temp.iloc[:,[3,0,1,2]]? ? #讀取temp的第3,0,1,2列
#print(X)
#iloc[m,n]? m-行? n-列
Y=dataset.iloc[:,1].values.reshape(150,1)
#print(Y)
theta = dot(dot(inv(dot(X.T,X)),X.T),Y)
print(theta)
theta=np.array([1.,1.,1.,1.]).reshape(4,1)
alpha=0.1? ?#學(xué)習(xí)速率
X0=X.iloc[:,0].values.reshape(150,1)
X1=X.iloc[:,1].values.reshape(150,1)
X2=X.iloc[:,2].values.reshape(150,1)
X3=X.iloc[:,3].values.reshape(150,1)
for i in range(10000):
? ? temp[0]=theta[0] + alpha*np.sum((Y-dot(X,theta))*X0)/150.0
? ? temp[1]=theta[1] + alpha*np.sum((Y-dot(X,theta))*X0)/150.0
? ? temp[2]=theta[2] + alpha*np.sum((Y-dot(X,theta))*X0)/150.0
? ? temp[3]=theta[3] + alpha*np.sum((Y-dot(X,theta))*X0)/150.0
? ? theta=temp
print(theta)
***************************************************************
2018-08-31
在'alpha=0.1? ?#學(xué)習(xí)速率' 之前 加上 temp=theta
2018-07-30
看報(bào)錯(cuò)信息,長(zhǎng)度不匹配。