Mas os parâmetros dos itens calculados pelo "grm" não deveriam ser os mesmos fornecidos no parâmetro "theta" da "rmvordlogis"? Por que a função "grm" não recupera os parâmetros dos itens usados para gerar as respostas com a função "rmvordlogis"? Em 08/09/2013 21:40, "Alexandre Serpa" <[email protected]> escreveu:
> Olá Felipe, > > Quando você chama os thetas que você entra representam, nesse caso, o > parâmetro das pessoas na variável latente que você quer calcular. O > "rmvordlogis" > simula as respostas a um dado item dado theta que você simulou. Quando > você chama o "grm", ele calcula, então, o parâmetro dos itens de acordo com > as respostas simuladas. > > No seu exemplo, você tem apenas 10 respostas simuladas. É um valor pequeno > e, por isso, alguns itens não convergiram (rodando o CMR, item 1 e item 5). > Se você aumentar o número de resposta, você melhora a estimativa dos > parâmetros dos itens (ex: x <- rmvordlogis(30,thetas,model = > "grm",IRT=F)). > > Abs > > Alexandre Serpa > > Psicólogo > Especialista em Métodos Computacionais Estatísticos > Mestre em Educação > Doutorando em Psicologia > email: [email protected] > > > Em 8 de setembro de 2013 21:16, Felipe Buchbinder <[email protected]>escreveu: > >> Professores, >> >> Obrigado pela ajuda. Modifiquei o meu CMR para o seguinte: >> >> library(ltm) >> >> thetas <- lapply(1:5, function(u) c(seq(-1, 1, len = 2), 1.2)) >> x <- rmvordlogis(10,thetas,model = "grm",IRT=F) >> grm(x) >> >> Porém, o grm não recupera os parâmetros -1, 1 e 1.2 para os itens. Ao >> invés disso, ele encontrou: >> >> >> >> Call: >> grm(data = x) >> >> Coefficients: >> Extrmt1 Extrmt2 Dscrmn >> Item 1 -0.457 0.525 4.973 >> Item 2 -0.250 0.363 2.051 >> Item 3 -0.500 0.314 2.589 >> Item 4 -0.346 0.600 0.961 >> Item 5 -0.161 -8.819 -0.251 >> >> Log.Lik: -46.384 >> >> >> E, de vez em quando, ele retorna a seguinte mensagem: >> >> >> Warning messages:1: glm.fit: algorithm did not converge 2: glm.fit: fitted >> probabilities numerically 0 or 1 occurred 3: glm.fit: algorithm did not >> converge 4: glm.fit: fitted probabilities numerically 0 or 1 occurred 5: >> glm.fit: algorithm did not converge 6: glm.fit: fitted probabilities >> numerically 0 or 1 occurred >> >> >> Estes resultados são de se esperar? Por que o grm parece não recuperar os >> parâmetros originais? >> >> Mais uma vez, obrigado, >> >> Felipe >> >> >> 2013/9/8 Alexandre Serpa <[email protected]> >> >>> Felipe, >>> >>> Na linha de comando "x <- rmvordlogis(10,thetas,model = "grm")" você >>> deve adicionar IRT=F. >>> >>> Você pode eliminar o modelo na geração dos dados randômicos >>> "(model="grm")" e especificar a parametrização ao chamar o comando "grm". >>> >>> Desse modo, vai funcionar "x<-rmvordlogis(10,thetas)". >>> >>> Abs >>> >>> >>> Alexandre Serpa >>> >>> Psicólogo >>> Especialista em Métodos Computacionais Estatísticos >>> Mestre em Educação >>> Doutorando em Psicologia >>> email: [email protected] >>> >>> >>> Em 8 de setembro de 2013 15:38, Ivan Bezerra Allaman < >>> [email protected]> escreveu: >>> >>>> A mensagem de erro é extremamente óbvia!!! e o seu exemplo não é >>>> reproduzível pois faltou colocar "library(ltm)". >>>> >>>> O problema está na especificação do argumento "model"!!! Ao abrir a >>>> função tem-se: >>>> >>>> probs <- if (model == "grm") { >>>> gammas <- lapply(thetas, function(x) { >>>> nx <- length(x) >>>> if (IRT) >>>> cbind(plogis(x[nx] * (z - matrix(x[-nx], n, >>>> nx - 1, TRUE))), 1) >>>> else cbind(plogis(matrix(x[-nx], n, nx - 1, TRUE) - >>>> x[nx] * z), 1) >>>> }) >>>> lapply(gammas, function(x) { >>>> nc <- ncol(x) >>>> cbind(x[, 1], x[, 2:nc] - x[, 1:(nc - 1)]) >>>> }) >>>> } >>>> >>>> Aqui, este objeto é calculado de modo que contém valores negativos em >>>> suas listas. Logo, e claramente, a função "sample" irá acusar erro, uma vez >>>> que, >>>> >>>> X <- matrix(0, n, p) >>>> for (j in 1:p) { >>>> for (i in 1:n) X[i, j] <- sample(ncatg[j], 1, prob = >>>> probs[[j]][i, >>>> ]) >>>> } >>>> >>>> Este objeto "probs" é justamente usado no argumento "prob" da função >>>> "sample" e como sabemos, não existe probabilidade negativa segundo os >>>> axiomas de Kolmogorov. >>>> >>>> Detectei o erro, porém não posso lhe dar a solução pois TRI não é algo >>>> que entendo!! >>>> >>>> (s,f,p) >>>> Allaman >>>> >>>> >>>> >>>> >>>> _______________________________________________ >>>> R-br mailing list >>>> [email protected] >>>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br >>>> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça >>>> código mínimo reproduzível. >>>> >>> >>> >>> _______________________________________________ >>> R-br mailing list >>> [email protected] >>> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br >>> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça >>> código mínimo reproduzível. >>> >> >> >> _______________________________________________ >> R-br mailing list >> [email protected] >> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br >> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça >> código mínimo reproduzível. >> > > > _______________________________________________ > R-br mailing list > [email protected] > https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br > Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça > código mínimo reproduzível. >
_______________________________________________ R-br mailing list [email protected] https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
