Skip to content

Lujia-Bai/mlrv

Repository files navigation

mlrv

R-CMD-check CRAN status

The goal of mlrv is to provide plug-in and debiased difference-based long-run covariance matrix estimation for time series regression. Two applications of hypothesis testing are also provided. The first one is for testing for structural stability in coefficient functions. The second one is aimed at detecting long memory in time series regression.

Installation

You can install the development version of mlrv from GitHub with:

# install.packages("devtools")
devtools::install_github("Lujia-Bai/mlrv")

Example

This is a basic example which shows you how to solve a common problem: test if the coefficient function of β€œSO2”,β€œNO2”,β€œDust” of the second year is constant using debiased difference-based estimator for the long-run covariance matrix function.

library(mlrv)
library(foreach)
library(magrittr)


data(hk_data)
colnames(hk_data) = c("SO2","NO2","Dust","Ozone","Temperature",
                      "Humidity","num_circu","num_respir","Hospital Admission",
                      "w1","w2","w3","w4","w5","w6")
n = nrow(hk_data)
t = (1:n)/n
hk = list()
setting = list(B = 5000, gcv = 1, neighbour = 1)
setting$lb = floor(20/7*n^(4/15)) - setting$neighbour 
setting$ub = max(floor(24/7*n^(4/15))+ setting$neighbour,             
                  setting$lb+2*setting$neighbour+1)
## basic example code
hk$x = as.matrix(cbind(rep(1,n), (hk_data[,1:3])))
hk$y = hk_data$`Hospital Admission`
setting$type = 0
setting$bw_set = c(0.1, 0.35)
setting$eta = 0.2
setting$lrvmethod = 1  #using debiased difference-based estimator
setting$lb  = 10
setting$ub  = 50
hk1 = list()
hk1$x = hk$x[366:730,]
hk1$y = hk$y[366:730]
p1 <- heter_gradient(hk1, setting, mvselect = -2, verbose = T)
#> [1] "m 26 tau_n 0.374190823993618"
#> [1] 10464.35
#>        V1       
#>  Min.   : 2669  
#>  1st Qu.: 5462  
#>  Median : 6844  
#>  Mean   : 7288  
#>  3rd Qu.: 8721  
#>  Max.   :19621
p1
#> [1] 0.1092

One can also use another scheme of MV selection based on the volatility of the estimator by setting mvselect = -1.

p1 <- heter_gradient(hk1, setting, mvselect = -1)
p1
#> [1] 0.0048

About

No description, website, or topics provided.

Resources

License

Unknown, MIT licenses found

Licenses found

Unknown
LICENSE
MIT
LICENSE.md

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors