Come aggregare i dati per ora in una serie temporale?Ciao comunità JMP,
Sto lavorando con un set di dati di serie temporali che include timestamp a livello di minuto (ad esempio, 2025-07-12 14:03:00 ). Sto cercando di aggregare i dati in intervalli orari in modo da poter visualizzare le tendenze nel corso della giornata.
Ho provato a usare la funzione Group con Hour(DateTime), ma non sono sicuro di applicarla correttamente in una tabella di riepilogo o in un grafico. Mi chiedevo anche se esiste un modo più semplice per arrotondare i timestamp all'ora più vicina prima dell'aggregazione.
Qualsiasi suggerimento o esempio di script per il raggruppamento orario sarebbe davvero utile.
Grazie!
John Marie
Analisi e modellazione dei dati di baseAccesso ai datiR: Come aggregare i dati per ora in una serie temporale?Vorrei creare una nuova colonna che rimuova minuti e secondi dalla colonna data/ora. Puoi crearla con le formule rapide fornite da JMP, ma ne richiederà solo alcune. Per prima cosa, puoi creare la colonna Data.

Quindi crea la colonna Ora

E combinali

Successivamente, apri la colonna creata, cambia il formato e modifica la formula moltiplicando l'ora per In Hours(1) (lo stesso di 60*60, che rappresenta i secondi in ore, ed è in pratica il modo in cui JMP gestisce il tempo). La formula finale sarà simile a questa.
In Hours(:"Hour[Column 1]"n) + :"Date[Column 1]"n

Naturalmente, puoi fare tutto questo in una singola colonna selezionando le formule dalle colonne Ora (ricordati di convertirle in ore) e Data e combinandole. La formula finale sarà simile a questa (non è l'unica opzione):
:Column 1 - Time Of Day(:Column 1) + In Hours(Hour(:Column 1))
dove: La colonna 1 è la colonna data e ora che hai

Potresti anche semplicemente sottrarre secondi e minuti (ricordati di convertirli in secondi) dalla tua data e ora e dovresti ottenere un risultato simile
:Column 1 - Second(:Column 1) - Minute(:Column 1)*60

Un posto dove leggere di più su data e ora in JMP Utilizzo di JMP > Riferimento per le funzioni JMP nelle formule > Funzioni di data e ora
R: Come aggregare i dati per ora in una serie temporale?JM:
Lavoro molto con dati di serie temporali di sensori provenienti da storici di dati di processo.
I tuoi dati sono distribuiti uniformemente, ad esempio con una media di un minuto o uno snapshot, oppure hanno timestamp che potrebbero risalire a qualsiasi momento entro l'ora? Vuoi aggregare i dati in una media oraria o semplicemente arrotondare i timestamp all'ora più vicina?
In entrambi i casi, il modo più semplice è: fare clic con il pulsante destro del mouse sulla colonna timestamp > Nuova colonna formula > Trasforma > Arrotonda > Ora più vicina
Una volta creato il timestamp arrotondato, per creare la media oraria: Tabelle > Riepilogo > Gruppo: Timestamp arrotondato; aggiungi le colonne di dati con le statistiche desiderate < Riepilogo tabella >
Sarò felice di discuterne ulteriormente.
R: Come aggregare i dati per ora in una serie temporale?@markschahl
molto comodo!!
Carino : )
R: Come aggregare i dati per ora in una serie temporale?Ah, Incremento data() svolge il lavoro in background.
La stessa funzione esegue il binning in GraphBuilder: davvero utile!
Se vi state chiedendo quali siano gli assi che si estendono fino all'anno 0:
Purtroppo la funzione Incremento data() non tratta i valori mancanti come tali; vengono arrotondati a 0.

alcuni miglioramenti + correzioni di bug per gli assi di data/ora annidati/binned & Codice articolo: TS-00147884.
R: Come aggregare i dati per ora in una serie temporale?Come soluzione alternativa, è possibile escludere le righe sbagliate,
cambia la formula in
tmp = Date Increment( :"date-time"n, "Hour", 0 );
If( tmp == -60084288000,.,tmp); // "0" = -60084288000
... or use -60084288000 as Codice valore mancante via the column properties:

R: Come aggregare i dati per ora in una serie temporale?Mi chiedevo solo:

con data e ora arrotondate ai minuti, non ci sono problemi di mancanze.
la spiegazione:

...nessun incremento di data()
Quindi, un altro approccio per arrotondare alle ore:

: )