Risultati da 1 a 18 di 18

Discussione: media ogni 10minuti



  1. #1
    L'avatar di Loretta
    Clicca e Apri
    Data Registrazione
    Nov 2015
    Località
    Bari
    Età
    34
    Messaggi
    90
    Versione Office
    2013
    Likes ricevuti
    0
    Likes dati
    31

    media ogni 10minuti

    Buon pomeriggio a tutti..:57:
    In un foglio ho una serie lunghissima di dati nella colonna A:
    - nella cella A1 vi sono data e ora esatta di registrazione del segnale;
    - dalla cella A3 ad A102 vi sono le registrazioni (100 valori) e poi a seguire vi è, sempre in colonna A, la data successiva di registrazione e i relativi 100 dati e così via…ogni foglio ricopre dalle ore 00:00 alle ore 23:59 circa.

    Ho inserito un foglio in allegato in modo da spiegarmi meglio

    http://dropcanvas.com/60lti

    Ciò che sto cercando di fare è la media dei valori ogni 10 minuti. Nel foglio che ho messo allegato ho effettuato manualmente il calcolo della media di valori per i primi 10 minuti di registrazione.
    Ma dato che devo proseguire per una quantità enorme di dati speravo in un modo automatizzato o almeno più rapido..
    Credo che la soluzione migliore sia distribuire i dati in due colonne: colonna A solo per la data e ora e la colonna B solo per i dati registrati e poi impostare in un’altra colonna una media ogni 10 minuti..


    :262:Grazie a tutti per l’aiuto

  2. #2

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4046
    Versione Office
    2013
    Likes ricevuti
    1239
    Likes dati
    931
    Ciao Loretta,
    non credo di aver capito :92:

    1) Ad esempio, in cella A2 hai questo valore: 3.31,4.79,12.07,23.75
    Cosa sarebbe?

    2) Nella tua formula prendi in considerazione determinati range:

    =MEDIA(A3:A102;A107:A190;A301:A400;A405:A504;A509:A608;A613:A696;A703:A802;A807:A906;A911:A1010;A1015:A1114;A1119:A1202;A1209:A1308;A1313:A1412;A1417:A1516;A1521:A1620;A1625:A1708)

    ma non vedo ad esempio il range A197:A296 che dovrebbe essere un'altro gruppo "utile".

    3) Le formule naturalmente si potrebbero usare ma il problema con i tuoi file è sempre la grossa mole di dati da analizzare e quindi con le formule c'è il rischio che si bloccherebbe tutto.

    Prova a spiegare meglio Loretta. Forse è per questo che non hai ancora ottenuto una risposta.

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

  3. #3
    L'avatar di Loretta
    Clicca e Apri
    Data Registrazione
    Nov 2015
    Località
    Bari
    Età
    34
    Messaggi
    90
    Versione Office
    2013
    Likes ricevuti
    0
    Likes dati
    31
    Ciao cromagno,

    i valori che ho nella cella A2 (3.31,4.79,12.07,23.75) non mi interessano, possono anche essere cancellati.
    Considera che io sto copiando in excel dati da file testo "txt"registrati da uno strumento di misura, quindi riguardo la lunghezza non è un problema perchè posso anche copiarli in fogli diversi..

    il range A197:A296 va infatti inserito nella formula della Media che ho scritto prima...mi sarà sfuggito erroneamente ecco perchè vorrei impostare una formula :69:

    In pratica ho una serie temporale di valori registrati durante tutto il giorno, quello che vorrei fare è la media dei valori ogni 10 minuti.
    Le indicazioni sui vari instanti di registrazione sono indicati nella serie temporale: vi è prima la riga con giorno e ora esatta di registrazione e poi i valori registrati (100 valori) poi a seguire nuova data e ora di registrazione e i dati (ulteriori 100), poi ancora data e ora e i successivi 100 valori ecc...

    se non sono stata chiara proverò a spiegarmi meglio con un esempio...

  4. #4

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4046
    Versione Office
    2013
    Likes ricevuti
    1239
    Likes dati
    931
    Ciao,
    un'altra domanda...
    I valori sono sempre negativi?

    [EDIT]
    Comunque... in base agli orari, i dati non vengono presi ogni 10 minuti.
    es.
    cella A1 = 00:00:07
    cella A105 = 00:00:32
    cella A195 = 00:01:53
    etc....

    e non sono nemmeno 100 valori per volta....
    Inoltre, ad esempio per l'orario 00:01:53 :
    se 53 sono i minuti e 01 le ore, 00 sarebbero i giorni?

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

  5. #5
    L'avatar di Bolz1
    Clicca e Apri
    Data Registrazione
    Jan 2016
    Località
    Padova
    Età
    41
    Messaggi
    117
    Versione Office
    '11 e 16 MAC
    Likes ricevuti
    7
    Likes dati
    1
    00.00.07.405 vuol dire 00h.00m.07s.405millesimi...

    Esatto cromagno, e non sono nemmeno 10 minuti esatti...poichè gli orari di lettura sono variabili...per esempio A1 sono le 00.00.07.405 e in A1623 sono le 00.09.35.405 cioè 9m28s...in A1713 sono le 00.10.56.405 e in A3231 le 00.20.00.405 cioè 9m4s...
    "Se tu segui tua stella non puoi fallire a glorioso porto" (Dante, Inferno - XV)

  6. #6
    L'avatar di Pitagora
    Clicca e Apri
    Data Registrazione
    Jul 2015
    Località
    Milano
    Età
    54
    Messaggi
    783
    Versione Office
    WIN , 2013 2016
    Likes ricevuti
    319
    Likes dati
    1
    Buona Sera

    Allego Pivot table della media dati raggruppati ogni 10 .


    PIVOT media ogni 10minuti.xlsx

    Spero che sia quello che chiedi.

    Saluti
    File Allegati File Allegati
    Window 8.1 Excel 2013/2016

  7. #7

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4046
    Versione Office
    2013
    Likes ricevuti
    1239
    Likes dati
    931
    Citazione Originariamente Scritto da Bolz1 Visualizza Messaggio
    00.00.07.405 vuol dire 00h.00m.07s.405millesimi...

    Esatto cromagno, e non sono nemmeno 10 minuti esatti...poichè gli orari di lettura sono variabili...per esempio A1 sono le 00.00.07.405 e in A1623 sono le 00.09.35.405 cioè 9m28s...in A1713 sono le 00.10.56.405 e in A3231 le 00.20.00.405 cioè 9m4s...

    Ciao,
    però se è come hai scritto, non ritorna per niente la cosa che ha detto Loretta: "100 valori per volta".

    [EDIT]
    Per adesso sono al cellulare ma grazie al tuo intervento mi sa che ho capito finalmente :)
    In attesa di una risposta da Loretta non mi ero preso la briga di controllare i valori oltre la riga 500....

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

  8. #8

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4046
    Versione Office
    2013
    Likes ricevuti
    1239
    Likes dati
    931
    Citazione Originariamente Scritto da Pitagora Visualizza Messaggio
    Buona Sera

    Allego Pivot table della media dati raggruppati ogni 10 .


    PIVOT media ogni 10minuti.xlsx

    Spero che sia quello che chiedi.

    Saluti
    Ciao Pitagora,
    nel tuo file (se non sbaglio), ogni media prende in considerazione 10 righe.
    Non credo sia quello che intendesse Loretta...sempre che io abbia capito cosa intendesse. :167:

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

  9. #9
    L'avatar di Loretta
    Clicca e Apri
    Data Registrazione
    Nov 2015
    Località
    Bari
    Età
    34
    Messaggi
    90
    Versione Office
    2013
    Likes ricevuti
    0
    Likes dati
    31
    Rispondo alle vostre osservazioni:
    - nell'orario sono indicate le ore, minuti, secondi e millesimi di secondo, tuttavia i millesimi di secondo si possono considerare trascurabili e si può far riferimento solo ai secondi.
    - i valori sono circa un centinaio per ogni acquisizione, ho indicato 100 facendo riferimento ai primi dati presenti nel foglio che ho allegato per poter essere più chiara possibile, ma considerate che si tratta di tantissimi dati per cui sicuramente capiteranno intervalli di acquisizione con più di 100 dati e altri intervalli con meno di 100 dati,
    - stessa considerazione per quanto riguarda l'orario, indicativamente intervalli di 10 minuti.

    Quello che vorrei ottenere è qualcosa di simile a questo:

    colonna A(orario)|colonna B (valori)
    1 00:00 -9587
    2 00:10 -9526
    3 00:20 -9427
    ... ...
    i valori in B1 devono essere la media dei valori acquisiti nell'arco di 10 minuti e così a seguire per le altre righe..

    In particolare io scarico i dati registrati direttamente dallo strumento e ottengo dei dati "grezzi" in formato txt, poi copio o importo in excel e appaiono così come il foglio che ho allegato precedentemente.

    Poi devo sistemarli in modo più ordinato con una colonna dei tempi e una colonna con i corrispondenti valori. Dato che sono una quantità infinita di dati vorrei eseguire una media dei valori ogni 10 minuti (quindi 600 secondi) per ridurre un pò il numero di dati altrimenti mi si blocca tutto il pc.

    spero sia un pò più chiaro.
    graziee
    Ultima modifica fatta da:Canapone; 28/06/17 alle 15:21

  10. #10

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4046
    Versione Office
    2013
    Likes ricevuti
    1239
    Likes dati
    931
    Ciao Loretta,
    ora dovrebbe essere chiaro (un ringraziamento a "Bolz1" per la dritta), ma ora sono al cellulare e domani non so se riuscirò a fare molto....
    Nelle prove (sbagliate,perchè non avevo capito la logica) di questo pomeriggio, il problema principale era convertire nel modo giusto orari/stringhe/date etc... (in VBA intendo). Comunque non ho provato con le formule... magari non ci mette tanto tempo, ma rimane il problema che essendo "volatili" si aggiornerebbero ad ogni cambiamento nel foglio.

    Riproverò appena mi è possibile.

    Ciao
    Tore

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

  11. #11

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4046
    Versione Office
    2013
    Likes ricevuti
    1239
    Likes dati
    931
    Ciao Loretta,
    scusa l'assenza ma ero un pò impegnato...

    Prova con questo codice (all'interno sono state dichiarate anche delle matrici che alla fine ho deciso di non usare):

    Codice: 
    Sub Media_Periodica()
    Dim i As Long, Data As Date, Tempo As Double, Orario1 As String, Orario2 As String
    Dim uRiga As Long, uRigaDati As Long, MatrMedie() As Variant, Intervallo As Integer
    Dim j As Long, Valori As Long, Somma As Double
    
    
    Application.ScreenUpdating = False
    uRiga = Range("A" & Rows.Count).End(xlUp).Row
    uRigaDati = Range("E" & Rows.Count).End(xlUp).Row + 1
    Range("E2:G" & uRigaDati).ClearContents
    'ReDim MatrMedie(1 To uRiga, 1 To 3)
    j = 2
    Orario1 = "00:00:00"
    Orario2 = "00:00:00"
    
    
    For i = 1 To uRiga
        If InStr(1, Cells(i, 1).Value, "/") > 0 Then
            Tempo = CDbl(DateDiff("s", Format(Orario1, "hh:mm:ss"), Format(Orario2, "hh:mm:ss")))
            If Tempo > 600 Then
                Range("E" & j).Value = Data
                Range("F" & j).Value = Format(Orario2, "hh:mm:ss")
                Range("G" & j).Value = Somma / Valori
                j = j + 1
            End If
            If j > 2 Then
                Orario1 = CStr(Range("F" & j - 1).Value)
            Else
                Orario1 = "00:00:00"
            End If
            Data = Format(Left(Cells(i, 1).Value, 10), "mm/dd/yyyy")
            Orario2 = Mid(Cells(i, 1).Value, 12, 8)
        End If
        If Cells(i, 1) < 0 Then
            Valori = Valori + 1
            Somma = Somma + Cells(i, 1).Value
        End If
    Next i
    Application.ScreenUpdating = True
    MsgBox "Estrazione completata!"
    End Sub
    Non ho avuto ancora il tempo di verificare se i dati sono corretti...
    Fai delle prove e se vedi che c'è qualcosa che non va fammi sapere.

    Ti lascio il file:
    http://dropcanvas.com/zxviy

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

  12. I seguenti utenti hanno dato un "Like"


  13. #12

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4046
    Versione Office
    2013
    Likes ricevuti
    1239
    Likes dati
    931
    [EDIT]
    Adesso ho solo il cellulare ma riguardando il codice ho notato di aver dimenticato di riportare a zero le variabili "somma" e "Valori" dopo aver scritto una media nelle colonne E,F,G.

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

  14. #13
    L'avatar di Loretta
    Clicca e Apri
    Data Registrazione
    Nov 2015
    Località
    Bari
    Età
    34
    Messaggi
    90
    Versione Office
    2013
    Likes ricevuti
    0
    Likes dati
    31
    Ciao cromagnio,
    grazie per il file..
    ho fatto delle prove per calcolare le medie della colonna G in riferimento agli intervalli di tempo indicati in colonna F....
    mi ritrovo con il primo gruppo di valori ma poi non mi ritrovo.
    Ultima modifica fatta da:Canapone; 28/06/17 alle 15:21

  15. #14

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4046
    Versione Office
    2013
    Likes ricevuti
    1239
    Likes dati
    931
    Citazione Originariamente Scritto da Loretta Visualizza Messaggio
    Ciao cromagnio,
    grazie per il file..
    ho fatto delle prove per calcolare le medie della colonna G in riferimento agli intervalli di tempo indicati in colonna F....
    mi ritrovo con il primo gruppo di valori ma poi non mi ritrovo..:256:
    :262:
    Ciao Loretta,
    si, come ti avevo detto, l'ho buttato giù ieri notte ma non ho avuto tempo per provarlo ed infatti mancavano un pò di cose....:186:

    L'ho modificato in questo modo (non molto elegante ma dovrebbe essere a posto):

    Codice: 
    Sub Media_Periodica()
    Dim i As Long, Data As Date, Tempo As Double, Orario1 As String, Orario2 As String
    Dim uRiga As Long, uRigaDati As Long, Intervallo As Integer
    Dim j As Long, Valori As Long, Somma As Double, Orario10Minuti As String, x As Long
    
    
    Application.ScreenUpdating = False
    uRiga = Range("A" & Rows.Count).End(xlUp).Row
    uRigaDati = Range("E" & Rows.Count).End(xlUp).Row + 1
    Range("E2:G" & uRigaDati).ClearContents
    
    
    j = 2
    Orario1 = "00:00:00"
    Orario2 = "00:00:00"
    Orario10Minuti = "00:00:00"
    
    
    For i = 1 To uRiga
        If InStr(1, Cells(i, 1).Value, "/") > 0 Then
            If j = 2 Then
                Range("E" & j).Value = Format(Left(Cells(i, 1).Value, 10), "mm/dd/yyyy")
                Range("F" & j).Value = Format(Mid(Cells(i, 1).Value, 12, 8), "hh:mm:ss")
                Range("G" & j).Value = "-"
                j = j + 1
            End If
            If j > 2 Then
                Orario1 = CStr(Range("F" & j - 1).Value)
            Else
                Orario1 = "00:00:00"
            End If
            Data = Format(Left(Cells(i, 1).Value, 10), "mm/dd/yyyy")
            Orario2 = Mid(Cells(i, 1).Value, 12, 8)
            Tempo = CDbl(DateDiff("s", Format(Orario1, "hh:mm:ss"), Format(Orario2, "hh:mm:ss")))
            If Tempo > 600 Then
                For x = i - 1 To i - 200 Step -1
                    If InStr(1, Cells(x, 1).Value, "/") > 0 Then
                        Orario10Minuti = Mid(Cells(x, 1).Value, 12, 8)
                        GoTo compila
                    End If
                Next x
    compila:
                Range("E" & j).Value = Data
                Range("F" & j).Value = Format(Orario10Minuti, "hh:mm:ss")
                Range("G" & j).Value = Somma / Valori
                j = j + 1
                Somma = 0
                Valori = 0
            End If
        End If
        If Cells(i, 1) < 0 Then
            Valori = Valori + 1
            Somma = Somma + Cells(i, 1).Value
        End If
    Next i
    uRigaDati = Range("E" & Rows.Count).End(xlUp).Row + 1
    For x = uRiga To uRiga - 200 Step -1
        If InStr(1, Cells(x, 1).Value, "/") > 0 Then
            Orario10Minuti = Mid(Cells(x, 1).Value, 12, 8)
            Exit For
        End If
    Next x
    Range("E" & uRigaDati).Value = Data
    Range("F" & uRigaDati).Value = Format(Orario10Minuti, "hh:mm:ss")
    Range("G" & uRigaDati).Value = Somma / Valori
    Application.ScreenUpdating = True
    MsgBox "Estrazione completata!"
    End Sub
    Ti lascio nuovamente il file :
    http://dropcanvas.com/162p1

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

  16. I seguenti utenti hanno dato un "Like"


  17. #15
    L'avatar di Loretta
    Clicca e Apri
    Data Registrazione
    Nov 2015
    Località
    Bari
    Età
    34
    Messaggi
    90
    Versione Office
    2013
    Likes ricevuti
    0
    Likes dati
    31
    Ciao cromagno, ho fatte varie prove sul file e ora mi ritrovo…
    Un'ultima cortesia.... mi sarebbe molto utile avere anche un foglio in cui i valori (quelli iniziali in colonna A e non quelli mediati ogni 10 min in colonna G) siano disposti in una colonna separata da quella della data e ora.
    Cioè
    Colonna A | Colonna B
    09/20/2015 00:00:07 | -9654
    | -9540
    | - 9636
    | ….


    Quale tipo di formula dovrei inserire in colonna B?

    grazie
    Loretta
    Ultima modifica fatta da:Canapone; 28/06/17 alle 15:22

  18. #16

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4046
    Versione Office
    2013
    Likes ricevuti
    1239
    Likes dati
    931
    Ciao,
    sto rispondendo dal cellulare quindi scusa per eventuali errori di battitura....
    Per risponderti, dipende da come li vuoi disposti.
    Se ad esempio ti occorrono solamente i valori (negativi), nella cella B1 puoi scrivere:

    =SE(A1<0;A1;"")

    e dopo ricopi in basso fin dove serve.

    Se intendevi altre disposizioni, converrebbe che allegassi un esempio pratico.

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

  19. #17
    L'avatar di Loretta
    Clicca e Apri
    Data Registrazione
    Nov 2015
    Località
    Bari
    Età
    34
    Messaggi
    90
    Versione Office
    2013
    Likes ricevuti
    0
    Likes dati
    31
    ok! intendevo proprio quello...scusa per la banalità della domanda!
    Ultima modifica fatta da:Canapone; 28/06/17 alle 15:22

  20. #18

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4046
    Versione Office
    2013
    Likes ricevuti
    1239
    Likes dati
    931
    Non c'è bisogno di scusarsi,
    l'importante è che tu abbia risolto ;)

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

Discussioni Simili

  1. [Risolto] Formula OMAGGIO ogni tot persone.
    Di rioma nel forum Domande su Excel in generale
    Risposte: 2
    Ultimo Messaggio: 21/02/17, 08:41
  2. media valori ogni x righe
    Di Loretta nel forum Domande su Excel in generale
    Risposte: 6
    Ultimo Messaggio: 05/08/16, 18:46
  3. incrementare di 1 ora ogni cella in una colonna
    Di Loretta nel forum Domande su Excel in generale
    Risposte: 17
    Ultimo Messaggio: 16/02/16, 20:35
  4. Concatenare ogni cella di una colonna con ogni cella di un'altra colonna
    Di Francesco2 nel forum Domande su Excel in generale
    Risposte: 6
    Ultimo Messaggio: 08/12/15, 14:40
  5. MEDIA ogni 6 righe
    Di Loretta nel forum Domande su Excel in generale
    Risposte: 5
    Ultimo Messaggio: 22/11/15, 07:42

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •