reg.panel.sgl {midasml} | R Documentation |
Regression fit for panel sg-LASSO
Description
Fits panel data sg-LASSO regression model.
The function fits sg-LASSO regression based on chosen tuning parameter selection method_choice. Options include cross-validation and information criteria.
Usage
reg.panel.sgl(x, y, gamma = NULL, gindex, intercept = TRUE,
method_choice = c("ic","cv"), nfolds = 10,
method = c("pooled", "fe"), nf = NULL,
verbose = FALSE, ...)
Arguments
x |
NT by p data matrix, where NT and p respectively denote the sample size of pooled data and the number of regressors. |
y |
NT by 1 response variable. |
gamma |
sg-LASSO mixing parameter. |
gindex |
p by 1 vector indicating group membership of each covariate. |
intercept |
whether intercept be fitted ( |
method_choice |
choose between |
nfolds |
number of folds of the cv loop. Default set to |
method |
choose between 'pooled' and 'fe'; 'pooled' forces the intercept to be fitted in sglfit, 'fe' computes the fixed effects. User must input the number of fixed effects |
nf |
number of fixed effects. Used only if |
verbose |
flag to print information. |
... |
Other arguments that can be passed to |
Details
The sequence of linear regression models implied by λ vector is fit by block coordinate-descent. The objective function is either (casemethod='pooled'
) ||y - ια - xβ||2NT + 2λ Ωγ(β),
where ι∈RNT and α is common intercept to all N items or (case
method='fe'
) ||y - Bα - xβ||2NT + 2λ Ωγ(β),
where B = IN⊗ι and ||u||2NT=<u,u>/NT is the empirical inner product. The penalty function Ωγ(.) is applied on β coefficients and is
Ωγ(β) = γ |β|1 + (1-γ)|β|2,1,
a convex combination of LASSO and group LASSO penalty functions.
Value
reg.panel.sgl object.
Author(s)
Jonas Striaukas
Examples
set.seed(1)
x = matrix(rnorm(100 * 20), 100, 20)
beta = c(5,4,3,2,1,rep(0, times = 15))
y = x%*%beta + rnorm(100)
gindex = sort(rep(1:4,times=5))
reg.panel.sgl(x = x, y = y,
gindex = gindex, gamma = 0.5,
method = "fe", nf = 10,
standardize = FALSE, intercept = FALSE)