import string from math import log import numpy as np #create the dataset #def createdataset(): # lst=[map(float, line.strip().split()) for line in open("1.txt","r").readlines()] # lab=[line.strip().split() for line in open("2.txt","r").readlines()] # return lst,lab #def createTree(dataSet,labels): from numpy import * from numpy.linalg import * # load txt def training(): data = loadtxt('1.txt',dtype=float) #data = np.array([map(float, line.strip().split(',')) for line in open("2.txt","r").readlines()]) y = data[:,-1:] x = data[:,0:-1] x_t = x.transpose() tmp = matrix(x_t) * matrix(x) tmp1 = inv(tmp) result = matrix(tmp1) * matrix(x_t) * matrix(y) return result def testing(): data = loadtxt('1test.txt',dtype=float) #data = np.array([map(float, line.strip().split(',')) for line in open("2test.txt","r").readlines()]) y = data[:,-1:] x = data[:,0:-1] row, col = y.shape sum = 0 fun = training() count = 0 for i in range(row): delta_y = dot(x[i],fun) - y[i] delta_y = delta_y**2 sum += delta_y count += 1 return sum/count print testing()