Given a dataframe of raw results from run_simulations, summarize the individual results at a per-iteration level.

summarize_simulations(simulation_results, ..., .key = "iteration")

Arguments

simulation_results

Simulation results dataframe.

...

Additional simulation results to summarize.

.key

Iteration ID field

Value

Dataframe.

Details

Summary stats created include: * Mean/Min/Max/Median are calculated for loss events * Median/Max/VaR are calculated for annual loss expected (ALE) * Mean/Median/Max/Min are calculated for single loss expected (SLE) * Mean percentage of threat capability exceeding difficulty on successful threat events * Mean percentage of difficulty exceeding threat capability on defended events * Vulnerability percentage * Z-score of ALE (outliers flagged as 2 >= z-score)

Examples

data(simulation_results) summarize_simulations(simulation_results$results)
#> # A tibble: 1,000 x 11 #> iteration largest_single_… min_loss max_loss outliers ale_sum loss_events #> <int> <dbl> <dbl> <dbl> <lgl> <dbl> <int> #> 1 1 2721058. 0 1.26e7 TRUE 1.26e7 203 #> 2 2 3137768. 0 1.42e7 TRUE 1.42e7 219 #> 3 3 2937112. 0 1.38e7 TRUE 1.38e7 219 #> 4 4 2142845. 0 9.29e6 TRUE 9.29e6 136 #> 5 5 2610111. 0 1.02e7 TRUE 1.02e7 157 #> 6 6 3734973. 0 1.72e7 TRUE 1.72e7 242 #> 7 7 3812536. 0 1.82e7 TRUE 1.82e7 253 #> 8 8 3705607. 0 1.65e7 TRUE 1.65e7 252 #> 9 9 3888987. 0 1.92e7 TRUE 1.92e7 288 #> 10 10 2440504. 0 1.15e7 TRUE 1.15e7 190 #> # … with 990 more rows, and 4 more variables: threat_events <int>, #> # avoided_events <int>, mean_tc_exceedance <dbl>, mean_diff_exceedance <dbl>