Analizza le frequenze degli intervalli di date


9

Ho un foglio di calcolo di Google in cui vorrei calcolare le occorrenze degli intervalli di date. Ho una colonna date_utc+1che contiene dati di data quasi casuali.

Quello che vorrei fare è mettere i valori della data in contenitori di sei ore ciascuno, vale a dire, 12/5/2012 23:57:04fino a quando non 12/6/2012 0:03:17sarebbero nel primo contenitore, 12/6/2012 11:20:53fino 12/6/2012 17:17:07al secondo contenitore e così via. Quindi, vorrei contare il verificarsi di tali contenitori, come ad esempio:

bin_from            bin_to                freq
-----------------------------------------------
12/5/2012 23:57:04  12/6/2012 0:03:17     2
12/6/2012 11:20:53  12/6/2012 17:17:07    19
...                 ...                   ...

Anche i suggerimenti parziali sono i benvenuti, dato che sono abbastanza nuovo nel foglio di calcolo.


1
Prova a leggere questa domanda e risposte: superuser.com/q/518632/179112
Jacob Jan Tuinstra

@JacobJanTuinstra - Funziona con i fogli di calcolo di Google?

@JacobJanTuinstra questo risolve esattamente la mia domanda superuser.com/questions/519286/… , potresti rispondere con un link alla tua risposta nell'altra domanda o contrassegnarlo come duplicato.
wnstnsmth,

@DaveRook; vedi il file di esempio che ho incluso.
Jacob Jan Tuinstra,

In futuro, fai domande sui fogli di lavoro Google qui, non su Super User. Grazie!
Slhck,

Risposte:


6

Penso di avere la soluzione per te. Non viene fatto tutto automaticamente, ma comporterà la tua proposta:

  • Nel tuo file la data è scritta come MM-DD-YYYY. Ho ipotizzato che l'intervallo di date copre le date di dicembre e NON casuali durante l'anno. Pertanto ho dovuto riorganizzare il formato della data in DD-MM-YYYY.
  • Come guida ho utilizzato la seguente formula per ottenere l'intervallo di date univoco: =UNIQUE(ARRAYFORMULA(DATEVALUE(I2:I)))
  • Nel foglio FREQUENZA ho usato questa formula per calcolare il primo intervallo:
    ='Original Data'!J2+TIME(18;0;0)
    devi scegliere saggiamente gli intervalli.
  • Copia questa formula fino al completamento dell'intervallo di intervallo desiderato:
    =A3+TIME(6;0;0)
  • Utilizza la formula FREQUENZA per calcolare il risultato:
    =FREQUENCY('Original Data'!I2:I;A3:A)

Vedi il file di esempio che ho preparato: Frequenze


Ha perfettamente senso, grazie! Ultima domanda: come hai fatto a convertire facilmente le date da MM-GG-AAAA a GG-MM-AAAA (non vedo alcuna formula).
wnstnsmth,

Lo aggiungerò al file OK, come bonus !! Grazie e buona fortuna
Jacob Jan Tuinstra,

@wnstnsmth: vedi foglio DATA
Jacob Jan Tuinstra,

abbastanza giusto .. pensato che ci fosse un modo più semplice :-)
wnstnsmth

-1

L'uso del linguaggio di query e una clausola group by dovrebbe fare il trucco.

Qualcosa di simile: =QUERY(A1:A509, "select count(B) group by year(A)") proverò a creare una query funzionante più tardi oggi.

MODIFICARE:

Ho inserito una nuova colonna di sinistra della colonna A. Questa colonna ha la formula: =year(A2) & "-" & minute(A2). Questo è solo un test rapido per creare alcuni intervalli, questa colonna dovrebbe riflettere la logica dei bin.

La formula =Query(A:E;"select B, count(A) group by B")calcolerà le frequenze.

- dichiarazione di non responsabilità, questo è solo un esempio, sono necessarie alcune modifiche per farlo calcolare l'esatta funzionalità menzionata nella domanda -


Affinché select count(B)al lavoro, è necessario preparare il campo di conseguenza: A:B. In secondo luogo, in Svizzera molto probabilmente il punto e virgola viene utilizzato per fermare la virgola.
Jacob Jan Tuinstra,

@wnstnsmth e Jasper: ho aggiunto il risultato nel file che ho creato sotto il foglio QUERY.
Jacob Jan Tuinstra,

@Jacob, ho anche completato la mia soluzione nel foglio (Colonne K, L, M). Qualche commento su questa soluzione? Dato che la mia risposta è stata sotto votata, vorrei sapere se mi manca qualcosa qui.
Jasper Duizendstra il
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.