RA Parallelberechnung mit synthetischen Daten
example_computation.RmdAnmerkungen
Das vorliegende Skript implementiert die Berechnung des Risikoausgleichs, wie sie in SORA PCG implementiert ist. Zu Demonstrations- und Testzwecken beinhaltet das Paket einen Datensatz mit synthetischen Daten. Entsprechend werden Berechnungsergebnisse nicht mit denjenigen aus SORA PCG übereinstimmen.
Konfiguration
# Individualdaten: wenn NULL, werden die im Package integrierten, synthetischen 
# Testdaten verwendet. Siehe hierzu Disclaimer im README sowie ?test_data
ind_data <- NULL
# PCG Liste: entweder ein data.frame oder eine Pfadangabe zu einer .xlsx-Datei
# Wenn NULL, wird die im Package integrierte PCG Liste zum Ausgleichsjahr 2022 
# verwendet. 
pcg_list <- NULL
# Ausgleichsjahr: wenn ind_data NULL ist, werden die Jahresangaben in den
# Testdaten entsprechend rekodiert.
Year <- 2022
# Angabe, ob Zwischenresultate bereinigt werden sollen
Clean_Steps <- FALSEParallelberechnung
source(system.file("script/1-Setup.R", package = "GErapcg"))
source(system.file("script/2-Pcg-List.R", package = "GErapcg"))
source(system.file("script/3-Grouping-Hierarchy.R", package = "GErapcg"))
source(system.file("script/4-Preparation.R", package = "GErapcg"))
source(system.file("script/5-Berechnung.R", package = "GErapcg"))
source(system.file("script/6-PCG-Nachweis.R", package = "GErapcg"))Alternativ kann die Parallelberechnung auch mit der Funktion
GErapcg::compute_ra berechnet werden.
Beispiele
Übersicht Berechnungsergebnisse für Versicherer 1 in Kanton Aargau
saldo_ag_1 <- saldo[BagNr == 1 & Kanton == "AG"] %>% 
  select(-a_tilde_kr, -saldo_ohne_D, -D_k) %>% 
  rename(
    `Aufenthalt Vorjahr` = Aufenthalt_Vj, 
    Monate = Monate_T,
    `Zuschlag Risikogruppe (Total)` = a_bkr_sum,
    `Zuschlag PCG (Total)` = pcg_sum_bkr,
    `Entlastung junge Erwachsene` = D_total,
    `Saldo` = saldo_mit_D
  )| BagNr | Kanton | Altersklasse | Geschlecht | Aufenthalt Vorjahr | Monate | Zuschlag Risikogruppe (Total) | Zuschlag PCG (Total) | Entlastung junge Erwachsene | Saldo | 
|---|---|---|---|---|---|---|---|---|---|
| 1.00 | AG | 0.00-18.00 | F | J | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 
| 1.00 | AG | 19.00-25.00 | F | J | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 
| 1.00 | AG | 26.00-30.00 | F | J | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 
| 1.00 | AG | 31.00-35.00 | F | J | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 
| 1.00 | AG | 36.00-40.00 | F | J | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 
| 1.00 | AG | 41.00-45.00 | F | J | 12.00 | 8455.14 | 0.00 | -59.05 | 8396.09 | 
| 1.00 | AG | 46.00-50.00 | F | J | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 
| 1.00 | AG | 51.00-55.00 | F | J | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 
| 1.00 | AG | 56.00-60.00 | F | J | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 
| 1.00 | AG | 61.00-65.00 | F | J | 0.00 | 0.00 | 0.00 | 0.00 | 0.00 | 
| Quelle: Eigene Darstellung, GE KVG. | |||||||||
Übersicht der PCG-Ansätze und Anzahl pro Versicherer
nachweis <- pcg_nachweis[
  as.data.table(pcg_coef), on = .(pcg)
][
  ,`:=`(Versicherer = paste0("Versicherer", BagNr))
] %>%
  dcast(
    Jahr + pcg + pcg_ansatz ~ Versicherer, value.var = "pcg",
    fun.aggregate = length
  ) %>% 
  rowwise() %>%
  mutate(
    `Total (Anzahl)` = sum(c_across(starts_with("Versicherer"))),
  ) %>%
  mutate(`Total (Zuschlag)` = pcg_ansatz * `Total (Anzahl)`) %>% 
  rename(PCG = pcg, `PCG Ansatz` = pcg_ansatz) %>% 
  select(-Jahr) %>% 
  arrange(desc(`Total (Zuschlag)`))| PCG | PCG Ansatz | Versicherer1.00 | Versicherer2.00 | Versicherer3.00 | Total (Anzahl) | Total (Zuschlag) | 
|---|---|---|---|---|---|---|
| KRK | 3158.81 | 7.00 | 9.00 | 19.00 | 35.00 | 110558.39 | 
| PSY | 1542.29 | 12.00 | 22.00 | 23.00 | 57.00 | 87910.31 | 
| HCH | 187.97 | 89.00 | 171.00 | 179.00 | 439.00 | 82520.26 | 
| DEP | 180.50 | 113.00 | 128.00 | 159.00 | 400.00 | 72199.51 | 
| DM1.00 | 647.69 | 17.00 | 29.00 | 42.00 | 88.00 | 56997.05 | 
| AIK | 1857.43 | 8.00 | 3.00 | 10.00 | 21.00 | 39006.05 | 
| DM2.00hyp | 317.80 | 34.00 | 45.00 | 35.00 | 114.00 | 36229.65 | 
| PAH | 30649.62 | 0.00 | 0.00 | 1.00 | 1.00 | 30649.62 | 
| HIV | 1314.89 | 7.00 | 6.00 | 8.00 | 21.00 | 27612.64 | 
| AST | 315.19 | 20.00 | 25.00 | 35.00 | 80.00 | 25215.45 | 
| Quelle: Eigene Darstellung, GE KVG. | ||||||