Checks if input parameters are valid. For invalid parameters, this function (i) stops the run and generates an error message, or (ii) sets the invalid parameter to its default value and reports it in a warning message.
CheckInputGraphical(
xdata,
pk = NULL,
Lambda = NULL,
lambda_other_blocks = 0.1,
pi_list = seq(0.6, 0.9, by = 0.01),
K = 100,
tau = 0.5,
seed = 1,
n_cat = 3,
implementation = PenalisedGraphical,
start = "cold",
scale = TRUE,
resampling = "subsampling",
PFER_method = "MB",
PFER_thr = Inf,
FDP_thr = Inf,
Lambda_cardinal = 50,
lambda_max = NULL,
lambda_path_factor = 1e-04,
max_density = 0.3,
verbose = TRUE
)
data matrix with observations as rows and variables as columns. For multi-block stability selection, the variables in data have to be ordered by group.
optional vector encoding the grouping structure. Only used for
multi-block stability selection where pk
indicates the number of
variables in each group. If pk=NULL
, single-block stability
selection is performed.
matrix of parameters controlling the level of sparsity in the
underlying feature selection algorithm specified in implementation
.
If Lambda=NULL
and implementation=PenalisedGraphical
,
LambdaGridGraphical
is used to define a relevant grid.
Lambda
can be provided as a vector or a matrix with
length(pk)
columns.
optional vector of parameters controlling the
level of sparsity in neighbour blocks for the multi-block procedure. To use
jointly a specific set of parameters for each block,
lambda_other_blocks
must be set to NULL
(not recommended).
Only used for multi-block stability selection, i.e. if length(pk)>1
.
vector of thresholds in selection proportions. If
n_cat=NULL
or n_cat=2
, these values must be >0
and
<1
. If n_cat=3
, these values must be >0.5
and
<1
.
number of resampling iterations.
subsample size. Only used if resampling="subsampling"
and
cpss=FALSE
.
value of the seed to initialise the random number generator and
ensure reproducibility of the results (see set.seed
).
computation options for the stability score. Default is
NULL
to use the score based on a z test. Other possible values are 2
or 3 to use the score based on the negative log-likelihood.
function to use for graphical modelling. If
implementation=PenalisedGraphical
, the algorithm implemented in
glassoFast
is used for regularised estimation of
a conditional independence graph. Alternatively, a user-defined function
can be provided.
character string indicating if the algorithm should be
initialised at the estimated (inverse) covariance with previous penalty
parameters (start="warm"
) or not (start="cold"
). Using
start="warm"
can speed-up the computations, but could lead to
convergence issues (in particular with small Lambda_cardinal
). Only
used for implementation=PenalisedGraphical
(see argument
"start"
in glassoFast
).
logical indicating if the correlation (scale=TRUE
) or
covariance (scale=FALSE
) matrix should be used as input of
glassoFast
if
implementation=PenalisedGraphical
. Otherwise, this argument must be
used in the function provided in implementation
.
resampling approach. Possible values are:
"subsampling"
for sampling without replacement of a proportion
tau
of the observations, or "bootstrap"
for sampling with
replacement generating a resampled dataset with as many observations as in
the full sample. Alternatively, this argument can be a function to use for
resampling. This function must use arguments named data
and
tau
and return the IDs of observations to be included in the
resampled dataset.
method used to compute the upper-bound of the expected
number of False Positives (or Per Family Error Rate, PFER). If
PFER_method="MB"
, the method proposed by Meinshausen and Bühlmann
(2010) is used. If PFER_method="SS"
, the method proposed by Shah and
Samworth (2013) under the assumption of unimodality is used.
threshold in PFER for constrained calibration by error
control. If PFER_thr=Inf
and FDP_thr=Inf
, unconstrained
calibration is used (the default).
threshold in the expected proportion of falsely selected
features (or False Discovery Proportion) for constrained calibration by
error control. If PFER_thr=Inf
and FDP_thr=Inf
, unconstrained
calibration is used (the default).
number of values in the grid of parameters controlling
the level of sparsity in the underlying algorithm. Only used if
Lambda=NULL
.
optional maximum value for the grid in penalty parameters.
If lambda_max=NULL
, the maximum value is set to the maximum
covariance in absolute value. Only used if
implementation=PenalisedGraphical
and Lambda=NULL
.
multiplicative factor used to define the minimum value in the grid.
threshold on the density. The grid is defined such that the density of the estimated graph does not exceed max_density.
logical indicating if a loading bar and messages should be printed.