============================================================ # Características dos ítens n=10 m=5 ai=c(rep(1,n)) # mesma discriminação bi=c(rep(-1,n/2),rep(1,n/2)) # 1a metade fácil, 2a metade difícil #ci=c(rep(1/m,n)) # admite-se acerto casual ci=c(rep(0,n)) # admite-se acerto casual # possiveis padrões de resposta d0=c(rep(0,n)) # aluno d0 erra todas d1=c(rep(1,n/2),rep(0,n/2)) # aluno d1 erra as difíceis e acerta as fáceis d2=c(rep(0,n/2),rep(1,n/2)) # aluno d2 acerta as difíceis e erra as fáceis d3=c(rep(1,n)) # aluno d3 acerta todas # grade de valores para proficiencia theta=seq(-10,10,0.2) N=length(theta) # calculo da verossimilhança dados =d1 llik=0*c(1:N) for(j in 1:N){pi=ci + (1-ci)/(1 + exp (-ai*(theta[j]-bi))); llik[j]= sum (dados*log(pi)) + sum ((1-dados)*log(1-pi))} # gráfico da verossimilhança plot(theta,llik,type="l") # # ordem das proficiencias: # d0 ~ d2 < d1 < d3, se ci diferente de 0 # d0 < d1 = d2 < d3, se ci=0 # #============================================================ # Inserir distribuição à priori mu.theta <- 0 sigma2.theta <-1 pi <- 3.14 logprior=0*c(1:N) for(j in 1:N){ logprior[j] = -0.5*log(2*pi*sigma2.theta) - 0.5*(((theta[j]- mu.theta)/sigma2.theta)^2) } logpost = llik + logprior lines(theta,logprior,type="l",lty=1,col=2) lines(theta,logpost,type="l",lty=1,col=4)