Aggiunge (o sovrascrive) per riferimento la colonna giornate, cioè il
numero di giorni di ciascun rapporto compresi nella finestra di analisi,
estremi inclusi. La misura è additiva e conta ogni rapporto per intero,
senza correggere le sovrapposizioni fra rapporti della stessa persona
(per quello vedi compute_giornate_effettive()).
Arguments
- dt
Un
data.tablecon le colonneinizioefinedi classeDate(IDateaccettata), tipicamente l'output diprepare_rapporti(). Viene modificato per riferimento.- window
Vettore di due
Date(o stringhe convertibili),c(inizio, fine), ordinate;NULL(default) non applica alcun taglio e conta l'intera durata del rapporto.
Details
Per ogni rapporto
giornate = max(0, min(fine, window[2]) - max(inizio, window[1]) + 1).
Un rapporto interamente fuori finestra ha giornate = 0; un rapporto
interamente dentro ha giornate = fine - inizio + 1; con window = NULL
vale sempre fine - inizio + 1 (0 se fine < inizio). Il calcolo avviene
su giorni interi: la colonna è di tipo integer, mai difftime. Date
mancanti producono giornate = NA; le sentinelle non vengono trattate
qui ma in prepare_rapporti().
See also
Other giornate:
compute_giornate_effettive()
Examples
library(data.table)
dt <- prepare_rapporti(cob_esempio)
#> filter_perimetro(): perimetro "ccnl", esclusi 254 rapporti su 5000 (5,1%) in 4 tipologie; 0 con tipologia ignota.
compute_giornate(dt, window = as.Date(c("2023-01-01", "2023-12-31")))
dt[giornate > 0, sum(giornate), by = ccnl_key][order(-V1)][1:5]
#> ccnl_key V1
#> <char> <int>
#> 1: A011 37796
#> 2: <NA> 36305
#> 3: H011 20936
#> 4: T011 16852
#> 5: C011 12407
# senza finestra: intera durata del rapporto
compute_giornate(dt)
dt[, summary(giornate)]
#> Min. 1st Qu. Median Mean 3rd Qu. Max.
#> 1.0 52.0 130.0 218.2 257.0 2173.0