| camel_index | R Documentation |
Computes a composite year-on-year index for bank performance assessment using the CAMEL framework. The multivariate weighting scheme employs robust factor analysis to derive communality-based weights from the correlation matrix of CAMEL ratios.
camel_index(
base_data,
current_data,
bank_names = NULL,
n_factors = 3,
scale_data = TRUE,
cov_control = rrcov::CovControlOgk(),
method = "pca",
scores_method = "regression"
)
base_data |
A data frame or matrix containing the base year CAMEL ratios.
If a data frame, the first column must contain bank identifiers (character or
numeric). If a matrix, bank identifiers must be supplied separately via
|
current_data |
A data frame or matrix containing the current year CAMEL
ratios, in the same format and order as |
bank_names |
A character or numeric vector of bank identifiers. Required
when |
n_factors |
Integer specifying the number of factors to extract in the
robust factor analysis. Default is |
scale_data |
Logical indicating whether to standardize the data before
factor analysis. Default is |
cov_control |
A control object for robust covariance estimation, passed to
|
method |
Character specifying the factor analysis method. Default is
|
scores_method |
Character specifying the method for computing factor
scores. Default is |
The index is computed as the arithmetic mean of two multivariate-weighted Laspeyres-type and Paasche-type indices, scaled to a base of 100. The percentage difference (PD) from the base year is also reported.
A list of class "camel_index" containing:
A tibble::tibble() with columns bank, I_mw
(composite index, base = 100), and PD (percentage difference from base).
Numeric vector of multivariate-weighted Laspeyres indices.
Numeric vector of multivariate-weighted Paasche indices.
Numeric vector of composite indices (base = 100).
Numeric vector of percentage differences from base year.
Numeric vector of communality-based weights from base year factor analysis.
Numeric vector of communality-based weights from current year factor analysis.
Numeric vector of eigenvalues from base year correlation matrix.
Numeric vector of eigenvalues from current year correlation matrix.
Integer, number of eigenvalues > 1 in base year.
Integer, number of eigenvalues > 1 in current year.
The fitted robustfa::FaCov() object for base year.
The fitted robustfa::FaCov() object for current year.
Matrix of current-to-base ratios for each CAMEL variable and bank.
The processed base year data (matrix, no bank names).
The processed current year data (matrix, no bank names).
Character vector of bank identifiers.
Integer, number of factors used.
The matched call.
When supplying data frames, the first column must be the bank identifier (character or numeric), and the remaining columns must be the five CAMEL ratios in the standard order:
Capital Adequacy (Ca)
Asset Quality (Aq) – inverted internally
Management Efficiency (Me) – inverted internally
Earnings (Eq)
Liquidity (Lm) – inverted internally
The inversion of Aq, Me, and Lm is handled automatically because higher values of these ratios indicate worse bank performance.
# Using the built-in example data
base_year <- camel_2015
current_year <- camel_2022
result <- camel_index(base_year, current_year)
result$index_table
# Access individual components
result$mw_lasp
result$mw_pash
result$weights_base
# Using matrices with explicit bank names
base_mat <- as.matrix(camel_2015[, -1])
curr_mat <- as.matrix(camel_2022[, -1])
banks <- camel_2015$Bank
result2 <- camel_index(base_mat, curr_mat, bank_names = banks)
result2$index_table
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.