########################################## # author: Karoline Faust # function task: do linear regression for the # two vectors given # input: x = vector with independent values # y = vector with dependent values # xlab = name of x parameter # ylab = name of y parameter # verbose = verbosity, default=FALSE # example: linReg(c(1:length(diff[,2])),diff[,2],xlab="pathway index",ylab="arithmetic accuracy",verbose=T) ########################################## linReg<-function(x=(1:10),y=x*2,xlab="x",ylab="y",verbose=FALSE){ x = as.numeric(x) y = as.numeric(y) if(verbose){ sd.y = sd(y,na.rm=TRUE) print(paste("standard deviation for",ylab,"=",sd.y)) } regData = data.frame(x,y) regForm = lm(formula = y~x, data=regData) print("regression statistics") print(regForm) print(summary(regForm)) main = paste(xlab,"versus",ylab) plot(x,y,main=main,xlab=xlab,ylab=ylab) abline(regForm,bty="n",col="red") }