+ Rispondi al Thread
Visualizzazione dei risultati da 1 a 4 su 4

Discussione: Allgoritmo per contare un tipo di "raggruppamento"

  1. #1
    AlpVir non è in linea Novello
    Post
    6

    Allgoritmo per contare un tipo di "raggruppamento"

    Ho una serie di valori che si susseguono ad intervalli di tempo costanti; sono raffigurati nell'immagine

    Come si vede essi formano una serie di "raggruppamenti" la cui frequenza però non è costante. In altre parole il tempo fra il "raggruppamento" 1 ed il "raggruppamento"2 può essere diverso dal tempo fra il "raggruppamento" 2 ed il "raggruppamento" 3. Inoltre non è costante la durata di questi "raggruppamenti".
    Vorrei unicamente contare quanti sono questi "raggruppamenti". Nell'esempio sono 26 e li ho segnati in rosso.
    Inoltre vorrei - se possibile - effettuare questi conteggi in tempo reale, ossia a metà (all'incirca) dell'intero evento vorrei avere il numero 13 o 14.
    Come affrontare questo problema ? Quali strumenti matematici posso utilizzare ? Ci son esempi di codice (preferibilmente in VB6) che risolvono in tutto o in parte questo problema ?
    Grazie per l'attenzione ?

  2. #2
    L'avatar di Brontolo
    Brontolo non è in linea Very Important Person
    Post
    2,697
    Quote Originariamente inviato da AlpVir Visualizza il messaggio
    Ho una serie di valori ...
    1) Dove hai questa serie di valori? In un database? In un file di testo? In un quaderno a quadretti? Dove e in che forma?
    2) Qual'è il valore dell'intervallo minimo che significa fine di una serie ed inizio di un'altra? In che unità di misura è espresso?
    codice:
    Inoltre vorrei - se possibile - effettuare questi conteggi in tempo reale,
    Spiegati meglio perché detta così non si capisce.

    In ogni caso non dimenticare che nessuno farà il lavoro per te, quindi mostra i tentativi che hai fatto specificando le eventuali difficoltà incontrate.
    Il regolamento del forum: la prima cosa da leggere.

  3. #3
    AlpVir non è in linea Novello
    Post
    6
    Ovviamente non pretendo che qualcuno faccia il lavoro per me. La mia richiesta era volta solo a chiedere un suggerimento circa quale algoritmo, formula o che altro utilizzare; non il codice (in qualsiasi linguaggio ad alto livello) bello e pronto (anche se - altrettanto ovviamente - questo sarebbe gradito).
    In passato ho avuto problematiche simili e le ho risolte con un semplice suggerimento di un utente del forum: "filtro di Kalman". Mi sono documentato sul questo "filtro" di cui non conoscevo l'esistenza ed ho risolto il mio problema. Sarei contento anche di ricevere un semplice suggerimento di questo tipo.
    Rispondo alle tue domande:
    1) i valori provengono da 3 sensori accelerometrici di uno smartphone; tramite una app che ho creato io stesso registro questi dati in un file di tipo CSV; il grafico è prodotto con il computer, Excel e Photoshop;
    2) l'asse delle Y è graduato correttamente ed i dati variano fra 0 e 4 circa (non credo abbia importanza cosa essi rappresentano, probabilmente sono valori di g); l'asse delle X rappresenta il tempo suddiviso in centesimi di secondo (193 significa 1.93 secondi e 585 rappresenta 5.85 secondi);
    3) vorrei visualizzare un contatore che all'inizio segna 0 e poi, nei 5-6 secondi di durata del fenomeno, segna 1, 2, 3, ecc. fino a 26; questo nell'esempio che ho postato.
    Non ho avuto finora delle difficoltà perchè .... non so proprio da dove cominciare e non ho fatto alcun tentativo.
    Grazie per l'attenzione.

  4. #4
    L'avatar di Brontolo
    Brontolo non è in linea Very Important Person
    Post
    2,697
    La questione è stabilire se la pausa tra due valori è abbastanza lunga per poter affermare che un gruppo è terminato e un altro è iniziato. Però, specialmente se vuoi elaborare questi dati "in diretta" (durante il movimento dello smartphone?), Visual Basic è quanto di più inadatto possa esistere. Del resto tu stesso dici che sei alla ricerca di indicazioni prescindendo dal linguaggio. Sposto nella sezione "Algoritmi e strutture".
    Il regolamento del forum: la prima cosa da leggere.

+ Rispondi al Thread

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi