train <- read.table("loans.dat",header=F,col.names=c("x1","x2","y"));

x1 <- train$x1;
x2 <- train$x2;

one <- mat.or.vec(length(x1),1) + 1.0;
X <- cbind(one,x1,x2)
y  <- train$y;

fit <- lsfit(X,y,intercept=FALSE);
b <- as.numeric(fit$coef);
yhat <- y - fit$residuals

test <- read.table("eval.dat",header=F,col.names=c("x1","x2","y"));

tx1 <- test$x1;
tx2 <- test$x2;
ty  <- test$y;

one <- mat.or.vec(length(tx1),1) + 1.0;  
X <- cbind(one,tx1,tx2)

pred <- X%*%b; 
dflt <- (pred > 0.5);

dflt <- as.numeric(dflt);

err <- abs(dflt-ty);
print(mean(err));

library(rpart);

augmented <- data.frame(cbind(y,x1,x2,yhat))

fit <- rpart(y ~ yhat, data=augmented, method="class", maxdepth=2);

#print(fit)
#
#print(fit$control)
#
#asource("psopts.r");
#postscript(file="boostl.eps");
#
#par(mar=c(0,0,0,0));
#plot(fit);
#text(fit);
#par();
#
#dev.off();

test <- read.table("eval.dat",header=F,col.names=c("x1","x2","y"));

tx1 <- test$x1;
tx2 <- test$x2;
ty <- test$y;

dflt <-  (pred>=0.5248545) 

dflt <- as.numeric(dflt);

err <- abs(ty-dflt);
print(mean(err));

train <- read.table("loans.dat",header=F,col.names=c("x1","x2","y"));

x1 <- train$x1;
x2 <- train$x2;

one <- mat.or.vec(length(x1),1) + 1.0;
X <- cbind(one,x1,x2,x1*x2,x1^2,x2^2);
y  <- train$y;

fit <- lsfit(X,y,intercept=FALSE);
b <- as.numeric(fit$coef);
yhat <- y - fit$residuals

test <- read.table("eval.dat",header=F,col.names=c("x1","x2","y"));

tx1 <- test$x1;
tx2 <- test$x2;
ty  <- test$y;

one <- mat.or.vec(length(tx1),1) + 1.0;  
X <- cbind(one,tx1,tx2,tx1*tx2,tx1^2,tx2^2);

pred <- X%*%b; 
dflt <- (pred > 0.5);

dflt <- as.numeric(dflt);

err <- abs(dflt-ty);
print(mean(err));

library(rpart);

augmented <- data.frame(cbind(y,x1,x2,yhat))

fit <- rpart(y ~ yhat, data=augmented, method="class", maxdepth=2);

#print(fit)
#
#print(fit$control)
#
#source("psopts.r");
#postscript(file="boosta.eps");
#
#par(mar=c(0,0,0,0));
#plot(fit);
#text(fit);
#par();
#
#dev.off();

test <- read.table("eval.dat",header=F,col.names=c("x1","x2","y"));

tx1 <- test$x1;
tx2 <- test$x2;
ty <- test$y;

dflt <-  (pred>=0.4294637) 

dflt <- as.numeric(dflt);

err <- abs(ty-dflt);
print(mean(err));

