library(MCMCpack) par(mfrow=c(2,2)) scores<-read.table("C:\\Documents and Settings\\All Users\\Documents\\My Documents\\bayesClass\\football.txt") names(scores) <- c("home", "favorite", "underdog", "spread", "favorite.name", "underdog.name", "week") plot(scores$spread,scores$favorite-scores$underdog,xlab="spread",ylab="outcome") numScores <- dim(scores)[1] plot(scores$spread+runif(numScores,-0.1,0.1),scores$favorite-scores$underdog+runif(numScores,-0.2,0.2), xlab="spread",ylab="outcome",main="with jitter") plot(scores$spread+runif(numScores,-0.1,0.1), scores$favorite-scores$underdog-scores$spread+runif(numScores,-0.2,0.2), xlab="spread",ylab="outcome-spread") hist(scores$favorite-scores$underdog-scores$spread, nclass=50,xlim=c(-44,44),freq=FALSE,ylim=c(0,0.04),xlab="",ylab="",main="") par(new=TRUE) myGrid <- seq(80)-40 plot(myGrid,dnorm(myGrid,0,14),xlim=c(-44,44),ylim=c(0,0.04), type="l",xlab="outcome-spread",ylab="") mean(scores$favorite-scores$underdog-scores$spread) median(scores$favorite-scores$underdog-scores$spread) sqrt(var(scores$favorite-scores$underdog-scores$spread)) dsinvchisq <- function(x,nu,sigmasqr) { return(dinvgamma(x,nu/2,nu*sigmasqr/2)) } rsinvchisq <- function(n,nu,sigmasqr) { return(rinvgamma(n,nu/2,nu*sigmasqr/2)) } par(mfrow=c(3,2)) hist(rsinvchisq(10000,3,10),nclass=50) hist(rsinvchisq(10000,2243,187.1),nclass=50) hist(rsinvchisq(10000,1,50),nclass=50) hist(rsinvchisq(10000,2241,187.2),nclass=50) hist(rsinvchisq(10000,100,180),nclass=50) hist(rsinvchisq(10000,2240,187.0),nclass=50) par(mfrow=c(1,1)) postSigmaSample <- sqrt(rsinvchisq(10000,2240,187.0)) hist(1-dnorm(-3.5/postSigmaSample),nclass=50) par(mfrow=c(3,2)) hist(rsinvchisq(10000,3,10),nclass=50) hist(rsinvchisq(10000,13,146.4),nclass=50) hist(rsinvchisq(10000,1,50),nclass=50) hist(rsinvchisq(10000,11,174.8),nclass=50) hist(rsinvchisq(10000,100,180),nclass=50) hist(rsinvchisq(10000,110,180.7),nclass=50) par(mfrow=c(1,1)) postSigmaSample <- sqrt(rsinvchisq(10000,13,146.4)) hist(1-dnorm(-3.5/postSigmaSample),nclass=50)