Skip to content

Commit

Permalink
changes
Browse files Browse the repository at this point in the history
  • Loading branch information
clewis26 committed Sep 23, 2016
1 parent 9aadd56 commit 1efae74
Show file tree
Hide file tree
Showing 2 changed files with 8,749 additions and 10 deletions.
47 changes: 37 additions & 10 deletions Clinton/Linear_reg_reg.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,25 +8,28 @@
import pandas as pd
import numpy as np

def error(w_hat):
def error(w_hat, xe, ye):
tr_error = np.empty([1,1])
for i in range(x.shape[0]) :
tr_error += np.power((y[i] - np.dot(w_hat.T,x[i])), 2)
return tr_error/x.shape[0]
for i in range(xe.shape[0]) :
tr_error += np.power((ye[i] - np.dot(w_hat.T,xe[i])), 2)
return tr_error/xe.shape[0]

df = pd.read_csv(r'Book3.csv', header=None)

df_rest = df.loc[df.index.isin(df.index)]
df_master=np.empty([1,1])
df_master=[]

for o in range (10):
df_master.append(df_rest.sample(n=8, axis =0))
df_rest = df_rest.loc[~df_rest.index.isin(df_master[o].index)]

tr_error= []

for p in range(len(df_master)-1):
df_num = df_master[p].values
tst_error=[]


for p in range(len(df_master)):
temp2 = pd.concat(df_master[:p] + df_master[p+1:])
df_num = temp2.values
x = np.empty([df_num.shape[0],df_num.shape[1]-1])
y = np.empty([df_num.shape[0],1])

Expand All @@ -50,6 +53,30 @@ def error(w_hat):

w_hat_ridge = np.dot(np.dot(np.linalg.inv(np.dot(x_t,x) + np.multiply(lam,np.identity(int(x.shape[1])))),x_t),y)

tr_error.append(error(w_hat_ridge))
tr_error.append(error(w_hat_ridge, x, y))

#validation
df_numv = df_master[p].values
xv = np.empty([df_numv.shape[0],df_numv.shape[1]-1])
yv = np.empty([df_numv.shape[0],1])


for qv in range(df_numv.shape[1]-1):
x_meanv = np.mean(df_numv[:,[qv]], dtype=np.float64)
x_stdv = np.std(df_numv[:,[qv]])
# replace each row in given column with normalized data
for rv in range(df_numv.shape[0]):
xv[rv][qv] = (df_numv[rv][qv]-x_meanv)/x_stdv


x_tv = xv.T

for sv in range (df_numv.shape[0]):
y_meanv = np.mean(df_numv[:,[df_numv.shape[1]-1]], dtype=np.float64)
y_stdv = np.std(df_numv[:,[df_numv.shape[1]-1]])
yv[sv][0] = (df_numv[sv,[df_numv.shape[1]-1]]-y_meanv)/y_stdv

lamv =[0.0]

val_error.append
tst_error.append(error(w_hat_ridge, xv, yv))

Loading

0 comments on commit 1efae74

Please sign in to comment.