Lorenz.SCADFABS {LorenzRegression}R Documentation

Solves the Penalized Lorenz Regression with SCAD penalty

Description

Lorenz.SCADFABS solves the penalized Lorenz regression with SCAD penalty on a grid of lambda values. For each value of lambda, the function returns estimates for the vector of parameters and for the estimated explained Gini coefficient, as well as the Lorenz-R^2 of the regression.

Usage

Lorenz.SCADFABS(
  YX_mat,
  weights = NULL,
  h,
  eps,
  a = 3.7,
  iter = 10^4,
  lambda = "Shi",
  lambda.min = 1e-07,
  gamma = 0.05
)

Arguments

YX_mat

a matrix with the first column corresponding to the response vector, the remaining ones being the explanatory variables.

weights

vector of sample weights. By default, each observation is given the same weight.

h

bandwidth of the kernel, determining the smoothness of the approximation of the indicator function.

eps

step size in the FABS algorithm.

a

parameter of the SCAD penalty. Default value is 3.7.

iter

maximum number of iterations. Default value is 10^4.

lambda

this parameter relates to the regularization parameter. Several options are available.

grid

If lambda="grid", lambda is defined on a grid, equidistant in the logarithmic scale.

Shi

If lambda="Shi", lambda, is defined within the algorithm, as in Shi et al (2018).

supplied

If the user wants to supply the lambda vector himself

lambda.min

lower bound of the penalty parameter. Only used if lambda="Shi".

gamma

value of the Lagrange multiplier in the loss function

Details

The regression is solved using the SCAD-FABS algorithm developed by Jacquemain et al and adapted to our case. For a comprehensive explanation of the Penalized Lorenz Regression, see Heuchenne et al. In order to ensure identifiability, theta is forced to have a L2-norm equal to one.

Value

A list with several components:

iter

number of iterations attained by the algorithm.

direction

vector providing the direction (-1 = backward step, 1 = forward step) for each iteration.

lambda

value of the regularization parameter for each iteration.

h

value of the bandwidth.

theta

matrix where column i provides the non-normalized estimated parameter vector for iteration i.

LR2

vector where element i provides the Lorenz-R^2 of the regression for iteration i.

Gi.expl

vector where element i provides the estimated explained Gini coefficient for iteration i.

References

Jacquemain, A., C. Heuchenne, and E. Pircalabelu (2022). A penalised bootstrap estimation procedure for the explained Gini coefficient.

See Also

Lorenz.Reg, PLR.wrap, Lorenz.FABS

Examples

data(Data.Incomes)
YX_mat <- Data.Incomes[,-2]
Lorenz.SCADFABS(YX_mat, h = nrow(Data.Incomes)^(-1/5.5), eps = 0.005)


[Package LorenzRegression version 1.0.0 Index]