[R-br] Predição lenta - Interpolação Kriging
Paulo Justiniano
paulojus em leg.ufpr.br
Terça Junho 17 09:41:12 BRT 2014
Ir de 240 para 1200 pontos de preodicao nao deve causar toda esta
diferenca no tempo de predicao se voce estiver simplesmente obtendo media
e variancia da preditiva.
Mesmo simulando de preditiva eu nao esperaria este tempo todo
nao tenho familiaridade com alguns objetos que voce está usando
mas talvez valha a pena isoldar dados em formatos mais simples e/ou rodar
rotinas alternativas de predicao em outros pacotes
On Tue, 17 Jun 2014, Thiago Cesar Lima Silveira wrote:
>
>
> Bom dia pessoal,Espero que possam me ajudar.
>
> Entro em contato para pedir uma ajuda em uma interpolação que estou tentando fazer.
> Já usei o mesmos comandos abaixo para realizar interpolações de variáveis de um lago por ordinary
> kriging com 240 pontos, sem problemas.
>
> Agora estou tentando interpolar a batimetria do lago, para tanto criei pontos no limite do lago com
> valor zero, cerca de 1200 pontos.
> Usando a mesma metodologia, a predição “predict( )" para o grid passa de 3 horas e não tive paciência
> para esperar mais, visto que as outras vezes que usei a predição para o grid demorou cerca de 2 minutos
> para 240 pontos interpolados.
> Imagino que a quantidade de pontos seja o problema.
>
> Alguém teria alguma sugestão de caminho que tivesse menos custo computacional, pois acho que a
> quantidade de pontos seja o problema.
>
> Agradeço desde já a atenção.
>
> Segue abaixo os comandos utilizados:
>
> >library(geoR)
> >library(raster)
> >library(gstat)
> >library(rgdal)
> >interpol_pcsand<-data_interpol[,c(1,2,6)]
>
> >coordinates(interpol_pcsand)<- ~long+lat
>
> #setting the CRS for the geospatial data, same as the mask and grid
> >projection(interpol_pcsand)<-'+proj=utm +zone=22 +south +ellps=aust_SA +units=m +no_defs '
>
> #search for duplicated coords
> >dup.coords(interpol_pcsand$coords)
>
> #Creating a gstat object
> >g_pcsand <- gstat(id="pcsand", formula=pcsand ~ 1, data=interpol_pcsand)
>
> # variogram with eye ball fitting
> > v.eye_sand <- eyefit(variog(as.geodata(interpol_pcsand["pcsand"]), max.dist = 20000))
>
> #saving a readable file for gstat
> >ve.fit <- as.vgm.variomodel(v.eye[[1]])
>
> #updating the gstat object
> >g_pcsand <- gstat(g_pcsand, id="pcsand", model=ve.fit_pcsand )
>
> #predicting to new data
> # grid4 diemensions -
> #features : 1630464
> #extent : 468333.3, 499983.3, 6634933, 6681223 (xmin, xmax, ymin, ymax)
> #coord. ref. : +proj=utm +zone=22 +south +ellps=aust_SA +units=m +no_defs
> >p_pcsand <- predict(g_pcsand, model=ve.fit_pcsand , newdata=grid4)
>
> #write a raster with the interpolated matrix
> rasterpcsand_pred <- rasterFromXYZ(as.data.frame(p_pcsand)[, c("x", "y", "data.pred")])
>
> #Create raster tif file
>
> >writeRaster(raster, filename="raster.tif", overwrite=TRUE)
>
>
> _________________________________
> Thiago Cesar Lima Silveira
> PhD candidate - Zoology PUCRS - Brazil
> Visitor PhD. student - School of Ocean Sciences - Bangor University
> Building Westbury Mouth
> Room Nautilus 327
> Menai Bridge - Isle of Anglesey - UK
> Telephone.: 07843 115244
> e-mail: thiago.cesar em acad.pucrs.br
> CV: http://lattes.cnpq.br/5960267776845701
>
>
>
>
Mais detalhes sobre a lista de discussão R-br