# Edps 590BAY # Fall 2019 # C.J.Anderson # # Function to plot cases of normal: posterior <- likelihood*prior # Input: # mu0 = prior mean # tau0 = prior standard deviation # m.y = mean for likelihood, would typically be sample mean of y # sigma= standard deviations for likelihood # # Output: figures # normalPriorLike <- function(mu0,tau0,m.y,sigma) { y <- seq(from=-12, to=12, length.out=1000) # you can change if want larger ******** # range prior <- dnorm(y,mean=mu0,sd=tau0) # density of prior likelihood <- dnorm(y,m.y,sd=sigma) # likelihood using "data" posterior <- prior*likelihood # proportional to posterior p1 <- max(prior) # to get comparable limits for y-axis p2 <- max(likelihood) # in plots of prior and likelihood y.lim <- max(p1,p2) # Indicates coorinadates to place figure on page layout(matrix(c(1,1,0,0,1,1,3,3,2,2,3,3,2,2,0,0),4,4,byrow=FALSE)) plot(y,prior, type='l', lwd=2, col="blue", main=paste("N(",mu0,",",tau0,") Prior"), ylim=c(0,y.lim), xlab="Possible theta", ylab="f(theta)") plot(y,likelihood, type='l', lwd=2, col="blue", main=paste("N(",m.y,",",sigma,") Likelihood"), ylim=c(0,y.lim), xlab="Possible theta", ylab="f(y|theta,100)") plot(y,posterior, type='l', lwd=2, col="blue", main="Posterior: N(mu_n,tau_n) ", xlab="Possible theta", ylab="f(theta|tau_n,y)") }