ci_bod_time_decomp: Dynamic Benefit of the Doubt decomposition for panel data

View source: R/ci_bod_time_decomp.R

ci_bod_time_decompR Documentation

Dynamic Benefit of the Doubt decomposition for panel data

Description

Computes dynamic Benefit of the Doubt (BoD) composite indicator scores for panel data using contemporaneous, sequential and intertemporal reference technologies. The function also computes Total Change, Catch-Up and Benchmark Shift indices.

Usage

ci_bod_time_decomp(
  data_long,
  id_col,
  time_col,
  indic_cols
)

Arguments

data_long

A data frame in long format containing the panel data.

id_col

Character string identifying the column containing the unit identifiers.

time_col

Character string identifying the column containing the time variable.

indic_cols

Character vector specifying the indicator variables used to compute the Benefit of the Doubt composite indicator.

Details

For each period the function computes three BoD efficiency scores:

  • contemporaneous scores (E_C);

  • sequential scores (E_S);

  • intertemporal scores (E_I).

These scores are then used to compute:

  • Total Change (TotalChange);

  • Catch-Up (CatchUp);

  • Benchmark Shift (BenchmarkShift);

Value

A data frame containing:

  • id: unit identifier;

  • time: time period;

  • E_C: contemporaneous BoD score;

  • E_S: sequential BoD score;

  • E_I: intertemporal BoD score;

  • TotalChange: Total Change index;

  • CatchUp: Catch-Up index;

  • BenchmarkShift: Benchmark Shift index.

Author(s)

E.Fusco and A.Magrini

References

Fusco, E. and Magrini, A. (2026) Dynamic Benefit of the Doubt Decomposition for Panel Data: Evidence from Sustainable Energy in the EU. Sustainability, 18, 5835.

See Also

ci_bod

Examples


panel <- data.frame(
  id = rep(1:3, each = 4),
  time = rep(1:4, times = 3),
  I1 = c(
    0.40, 0.43, 0.47, 0.52,
    0.60, 0.63, 0.67, 0.72,
    0.80, 0.84, 0.89, 0.95
  ),
  I2 = c(
    0.50, 0.54, 0.58, 0.63,
    0.70, 0.74, 0.79, 0.84,
    0.90, 0.95, 1.00, 1.06
  )
)

res <- ci_bod_time_decomp(
  data_long = panel,
  id_col = "id",
  time_col = "time",
  indic_cols = c("I1", "I2")
)

#head(res)


Compind documentation built on July 10, 2026, 9:06 a.m.