O pacote FRK
está disponível no CRAN! Para instalar, digite
install.packages( " FRK " )
Para instalar a versão de desenvolvimento mais recente, carregue devtools
e digite
install_github( " andrewzm/FRK " , dependencies = TRUE , build_vignettes = TRUE )
Um artigo apresentando o pacote está disponível aqui. Um artigo detalhando a abordagem em um ambiente não gaussiano está disponível aqui (um resumo de seis páginas deste artigo está disponível aqui).
A vinheta "FRK_intro" resume o pacote, fornece detalhes sobre o algoritmo EM que pode ser empregado em um cenário gaussiano e fornece vários exemplos. Outra vinheta, "FRK_non-Gaussian", resume a inferência em um cenário não-Gaussiano (onde uma aproximação de Laplace é usada) e contém exemplos usando dados não-Gaussianos e os métodos de plotagem recentemente disponíveis. Para acessar as vinhetas, clique nos seguintes links:
Introdução ao FRK
Tutorial sobre modelagem de dados não gaussianos espaciais e espaço-temporais com FRK
Uma página pkgdown
também está disponível aqui.
Se você usa FRK
em seu trabalho, pesquisa ou outras atividades, cite-o usando as informações fornecidas por citation("FRK")
.
Pacote: FRK
Tipo: Pacote
Título: Krigagem de Classificação Fixa
Versão: 2.3.1
Data: 16/07/2024
Autor: Andrew Zammit-Mangion, Matthew Sainsbury-Dale
Mantenedor: Andrew Zammit-Mangion [email protected]
Descrição: Uma ferramenta para modelagem e previsão espacial/espaço-temporal com grandes conjuntos de dados. A abordagem modela o campo e, portanto, a função de covariância, usando um conjunto de funções básicas. Essa representação de função básica de classificação fixa facilita a modelagem de big data, e o método permite naturalmente funções de covariância anisotrópicas não estacionárias. A discretização do domínio espacial nas chamadas unidades de área básicas (BAUs) facilita o uso de observações com suporte variável (ou seja, suportes de área e de referência de ponto, potencialmente simultaneamente) e previsão sobre regiões arbitrárias especificadas pelo usuário. FRK
também suporta inferência sobre várias variedades, incluindo o plano 2D e a esfera 3D, e fornece funções auxiliares para modelar, ajustar, prever e plotar com relativa facilidade. A versão 2.0.0 e superior também suporta a modelagem de dados não gaussianos (por exemplo, Poisson, binomial, binomial negativo, gama e gaussiano inverso) empregando uma estrutura de modelo linear misto generalizado (GLMM). Zammit-Mangion e Cressie (2021) descrevem FRK
em um cenário gaussiano e detalham seu uso de funções básicas e BAUs, enquanto Sainsbury-Dale et al. (2024) descrevem FRK
em um cenário não gaussiano; estão disponíveis duas vinhetas que resumem esses artigos e fornecem exemplos adicionais.
Licença: GPL (>= 2)
library( " FRK " )
library( " sp " )
library( " ggplot2 " )
library( " ggpubr " )
# # Setup
m <- 1000 # Sample size
RNGversion( " 3.6.0 " ); set.seed( 1 ) # Fix seed
zdf <- data.frame ( x = runif( m ), y = runif( m )) # Generate random locs
zdf $ z <- sin( 8 * zdf $ x ) + cos( 8 * zdf $ y ) + 0.5 * rnorm( m ) # Simulate data
coordinates( zdf ) = ~ x + y # Turn into sp object
# # Run FRK
S <- FRK( f = z ~ 1 , # Formula to FRK
list ( zdf ), # All datasets are supplied in list
n_EM = 10 ) # Max number of EM iterations
pred <- predict( S ) # Prediction stage
# # Plotting
plotlist <- plot( S , pred )
ggarrange( plotlist = plotlist , nrow = 1 , legend = " top " )
Aqui analisamos dados simulados de Poisson. Significamos um modelo de dados de Poisson com uma resposta média que é modelada usando a função de ligação de raiz quadrada definindo response = "poisson"
e link = "sqrt"
em FRK()
. Outras distribuições de resposta não gaussianas disponíveis no FRK
são as distribuições binomial, binomial negativa, gama e gaussiana inversa.
# # Simulate Poisson data using the previous example's data to construct a mean
zdf $ z <- rpois( m , lambda = zdf $ z ^ 2 )
# # Run FRK
S <- FRK( f = z ~ 1 , list ( zdf ),
response = " poisson " , # Poisson data model
link = " sqrt " ) # square-root link function
pred <- predict( S )
# # Plotting
plotlist <- plot( S , pred $ newdata )
ggarrange( plotlist $ z , plotlist $ p_mu , plotlist $ interval90_mu ,
nrow = 1 , legend = " top " )
Agora analisamos dados espaço-temporais, usando o conjunto de dados NOAA.
# # Setup
library( " spacetime " )
data( " NOAA_df_1990 " )
Tmax <- subset( NOAA_df_1990 , month %in% 7 & year == 1993 )
Tmax <- within( Tmax , { time = as.Date(paste( year , month , day , sep = " - " ))})
STObj <- stConstruct( x = Tmax , space = c( " lon " , " lat " ), time = " time " , interval = TRUE )
# # BAUs: spatial BAUs are 1x1 pixels, temporal BAUs are 1 day intervals
BAUs <- auto_BAUs( manifold = STplane(),
cellsize = c( 1 , 1 , 1 ),
data = STObj , tunit = " days " )
BAUs $ fs <- 1 # scalar fine-scale variance matrix, implicit in previous examples
# # Basis functions
G <- auto_basis( manifold = STplane(), data = STObj , nres = 2 , tunit = " days " )
# # Run FRK
STObj $ std <- 2 # fix the measurement error variance
S <- FRK( f = z ~ 1 + lat , data = list ( STObj ),
basis = G , BAUs = BAUs , est_error = FALSE , method = " TMB " )
pred <- predict( S , percentiles = NULL )
# # Plotting: include only some times via the argument subset_time
plotlist <- plot( S , pred $ newdata , subset_time = c( 1 , 7 , 13 , 19 , 25 , 31 ))
ggarrange( plotlist = plotlist , nrow = 1 , legend = " top " )
O pacote FRK
está sendo usado atualmente para gerar animações espaço-temporais de campos observados por dados de satélite. Aqui mostramos uma previsão diária de CO2 usando dados do NASA OCO-2 entre setembro de 2014 e junho de 2016.
Obrigado a Michael Bertolacci por desenhar o logotipo hexadecimal FRK!