[R-br] Calibração de dados preenchidos

Wagner Wolff wwolff em usp.br
Quinta Maio 7 12:08:56 BRT 2015


Entendi, realmente não deu certo essa minha ideia, vou proceder com o
mtsdi.
Obrigado pela ajuda Éder. Abraço

Em 5 de maio de 2015 16:53, Éder Comunello <comunello.eder em gmail.com>
escreveu:

> Wagner, boa tarde!
>
> Eu não recomendo usar splinefun() porque a calibração do modelo feita na
> execução de  mnimput() é bem mais sofisticada. O objeto imput é  o
> próprio objeto miss2 com as falhas preenchidas com base na covariância e
> comportamento temporal das séries. Já é o produto final, não precisa
> ajustar por splinefun().
>
> Se você fizer imput-miss2 verá que a diferença é 0 para todos valores
> iniciais e um novo valor será imputado para todos os casos onde havia NA.
>
> O procedimento que postei faz uma avaliação geral da qualidade do ajuste
> pras 5 séries porque exige menor quantidade de pontos de teste. Daria pra
> fazer uma avaliação de cada série, mas teria que reservar uma quantidade
> significativa de pontos de cada série, o que pode impactar no modelo.
>
> Além do mais, se você utilizar splinefun() pra predizer valores
> utilizados na calibração, vai retornar os próprios valores utilizados...
> fun <- splinefun(sel.obs, sel.pre)
> all.equal(fun(sel.obs), sel.pre) ### [1] TRUE
>
> Notar que:
> args(splinefun)
> ### function (x, y = NULL, method = c("fmm", "periodic", "natural",
> ###    "monoH.FC", "hyman"), ties = mean)
>
> A forma que segue é coerente, mas os resultados não são tão animadores
> quanto os retornados por mtsdi::mnimput()
> fun2 <- splinefun(miss[notNA]) ### ajusta uma spline em função dos dados
> disponíveis
> sel.pre2 <- fun2(sel.obs)      ### usa a splinefun pra estimar os dados
> reservados
> ggof(sel.pre2,sel.obs)         ### avalia predições comparando com dados
> reservados ("verdade")
>
> [image: Imagem inline 1]
>
>
> Éder Comunello <c <comunello.eder em gmail.com>omunello.eder em gmail.com>
> Dourados, MS - [22 16.5'S, 54 49'W]
>
> Em 5 de maio de 2015 13:57, Wagner Wolff <wwolff em usp.br> escreveu:
>
>> Olá Éder vou tentar esclarecer com seu exemplo, minhas modificações estão
>> em negrito.
>>
>> require(mtsdi)
>> data(miss)
>> notNA   <- which(!is.na(miss), arr.ind=T)  ### valores presentes
>> set.seed(333); sel.pos <- notNA[sample(nrow(notNA), 20),] ### reservando
>> 20 valores
>> sel.obs <- miss[sel.pos]                   ### valores reservados
>>
>> miss2 <- miss
>> miss2[sel.pos] <- NA                       ### "exclui" valores reservados
>> f <- ~c31+c32+c33+c34+c35
>> i <- mnimput(f,miss2,eps=1e-3,ts=TRUE,
>> method="spline",sp.control=list(df=c(7,7,7,7,7)))
>> summary(i)
>> imput <- data.frame(predict(i))
>> sel.pre <- imput[sel.pos]                  ### predição referente aos 20
>> valores reservados
>>
>> cbind(sel.pre, sel.obs)                    ### comparação
>> library(hydroGOF)
>> ggof(sel.pre,sel.obs)
>>
>>
>>
>> *fun.cal <- splinefun(sel.pre,sel.obs)     ## função para
>> calibrarsel.pre.cal <- fun.cal(sel.obs)*
>>
>> *## calcular valores preditos após calibração*
>>
>> *## Assim usaria a função fun.cal para calibrar outros valores imputados
>> do mesmo banco de dados.*
>>
>> *Entretanto, não foi útil, pois quando uso para outros valores imputados
>> houve aumento no erro*
>>
>> Em 5 de maio de 2015 10:40, Éder Comunello <comunello.eder em gmail.com>
>> escreveu:
>>
>>> Wagner, bom dia!
>>>
>>> Não entendi exatamente o que você está buscando. Teria dados pra um
>>> exemplo mais prático?
>>>
>>> Por exemplo, você quer completar dados de uma série de chuva  em
>>> particular e dispõe dados de quatro estações próximas, assumindo algum grau
>>> de correlação/covariância entre elas? Sua preocupação é saber quão "boa"
>>> foi a predição ou algo assim?
>>>
>>>
>>> Éder Comunello <c <comunello.eder em gmail.com>omunello.eder em gmail.com>
>>> Dourados, MS - [22 16.5'S, 54 49'W]
>>>
>>>
>>>
>>> _______________________________________________
>>> R-br mailing list
>>> R-br em listas.c3sl.ufpr.br
>>> 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
>> R-br em listas.c3sl.ufpr.br
>> 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
> R-br em listas.c3sl.ufpr.br
> 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.
>
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20150507/eb9f9095/attachment.html>


Mais detalhes sobre a lista de discussão R-br