Make forecast print methods modular (e.g. multivariate joint_across)

Aperta
#1,183 0 commenti 1 reazione 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
45/100
Tipo di issue
Refactoring
Chiarezza
Abbastanza chiara
Stato di attività
Tranquilla
Stack tecnologico
r
Ambito
data

Direzione di ricerca

Inizia da print.forecast() in R/class-forecast.R e verifica come il metodo generico gestisce attualmente il tipo di forecast, l’unità di forecast e joint_across. Confronta l’approccio chiuso #1074 con il branch fix/1043-multivariate-print-joint-across, inclusi i relativi test e snapshot. Il lavoro è completato quando è possibile aggiungere un output multivariato specifico della classe senza duplicare la logica di stampa generica.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Background

In #1074 we explored adding dedicated print methods for multivariate forecast objects so the print output shows which columns are jointly forecasted (joint_across).
That PR was closed because its approach duplicated most of the generic print.forecast() logic rather than building on it.
This issue captures the useful ideas so we don't lose them, and reframes the work around making printing modular.

Note that joint_across printing is in principle already reachable via the generic method (R/class-forecast.R), so the real gap is structural, not a missing feature.

Goal

Make print for forecast objects modular so class-specific information (like joint_across for multivariate forecasts) can be added without copying the generic method.

Ideas to consider

  • Split print.forecast() so the generic, shared parts (forecast type, forecast unit) are reusable and class methods can add their own lines via NextMethod() rather than re-implementing.
  • Add a thin print.forecast_multivariate_sample() / print.forecast_multivariate_point() that only contributes the "Joint across:" line.
  • Extract the joint_across computation (setdiff(get_forecast_unit(x), get_grouping(x))) into a small reusable helper.
  • Consider whether non-generic, class-specific output belongs in the generic method at all, and document the intended division.

Reference

  • Original PR (closed): #1074
  • Branch with a working prototype to salvage tests/snapshots from: fix/1043-multivariate-print-joint-across
  • Earlier discussion: #1043

This was opened by a bot. Please ping @seabbs for any questions.

Lingua principale
R
Stelle
65
Fork
24
Merge medio
1h 24m
PR unite (30g)
2

Preparare l'ambiente

Apri in Codespaces

Avvia il container di sviluppo del progetto nel browser, con il tuo account GitHub.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di epiforecasts/scoringutils

Tutte le issue di epiforecasts/scoringutils

Issue simili

Altre issue su R

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.