Skip to contents

Scrive su disco le tabelle contenute in un oggetto ccnlcob_result seguendo la convenzione dell'ecosistema: RDS per le tabelle piccole (ranking, ranking_periodo, rilevanti, retribuzioni, qualita) e FST con compressione 85 per i cubi (cpi, tipologie). meta e keys non sono tabelle e vengono sempre scritti in RDS.

Usage

write_results(
  result,
  dir,
  formats = c(small = "rds", cube = "fst"),
  overwrite = FALSE
)

Arguments

result

Oggetto di classe ccnlcob_result prodotto da analyze_ccnl().

dir

Directory di destinazione; viene creata se non esiste.

formats

Vettore character nominato con i formati per le tabelle piccole (small) e per i cubi (cube). Valori ammessi: "rds", "fst".

overwrite

Se FALSE (default) la funzione si ferma con un errore quando uno dei file di destinazione esiste già.

Value

Un data.table con una riga per file scritto e le colonne oggetto, file (percorso), formato, righe (NA per gli oggetti non tabellari) e byte, restituito invisibilmente.

Details

I file sono meta.rds, ranking.<f>, ranking_periodo.<f>, rilevanti.<f>, keys.rds, cpi.<f>, tipologie.<f>, retribuzioni.<f> e qualita.<f>, con <f> pari al formato della famiglia. Gli elementi NULL del risultato (passi saltati) non producono file e sono elencati in meta$oggetti_assenti. Il formato FST non conserva gli attributi delle tabelle (ccnlcob_ranking, ccnlcob_crosstab, ...): per ogni tabella scritta essi vengono salvati in meta$attributi[[nome]], così che meta.rds permetta di ricostruirli con attr(). meta$file riporta il manifesto dei file scritti.

See also

analyze_ccnl() per la produzione del risultato.

Other orchestrazione: analyze_ccnl(), print.ccnlcob_result()

Examples

res <- analyze_ccnl(cob_esempio, lookup_cpi = cpi_esempio, min_n = 10)
dir_out <- file.path(tempdir(), "ccnl")
manifesto <- write_results(res, dir = dir_out, overwrite = TRUE)
manifesto
#>            oggetto                                     file formato righe  byte
#>             <char>                                   <char>  <char> <int> <num>
#> 1:            meta            /tmp/RtmpcJSBtY/ccnl/meta.rds     rds    NA  1760
#> 2:         ranking         /tmp/RtmpcJSBtY/ccnl/ranking.rds     rds    25  3264
#> 3: ranking_periodo /tmp/RtmpcJSBtY/ccnl/ranking_periodo.rds     rds   150 14387
#> 4:       rilevanti       /tmp/RtmpcJSBtY/ccnl/rilevanti.rds     rds    22  3047
#> 5:            keys            /tmp/RtmpcJSBtY/ccnl/keys.rds     rds    NA   115
#> 6:             cpi             /tmp/RtmpcJSBtY/ccnl/cpi.fst     fst   254 15886
#> 7:       tipologie       /tmp/RtmpcJSBtY/ccnl/tipologie.fst     fst   225 10811
#> 8:    retribuzioni    /tmp/RtmpcJSBtY/ccnl/retribuzioni.rds     rds   120  4117
#> 9:         qualita         /tmp/RtmpcJSBtY/ccnl/qualita.rds     rds    25  1013
readRDS(file.path(dir_out, "meta.rds"))$versione
#> [1] "0.7.0"
unlink(dir_out, recursive = TRUE)