Selezione e raggruppamento elementi di un vettore secondo multiple condizioni

di il
2 risposte

Selezione e raggruppamento elementi di un vettore secondo multiple condizioni

Buongiorno.

Da un po' di tempo mi sto scervellando nel cercare di capire, da utente basic di matlab, come fare a risolvere questo problema:

ho un vettore colonna, A, di N elementi, i quali sono da classificarsi in due gruppi X e Z in funzione del fatto che l'elemento soddisfi una certa condizione. Inoltre, ogni serie di M elementi consecutivi che soddisfi la condizione è da raggruppare in un vettore da nominare progressivamente (ad esempio, la prima serie di M elementi consecutivi che soddisfi la condizione di appartenenza ad X, è da raggrupparsi in un vettore X1 e così via).

ad esempio, una volta individuati gli elementi che soddisfino una o l'altra condizione, mi troverò in una situazione del genere A=(X, X, X, Z, X, Z, Z, Z, X, X, X); devo, adesso, raggruppare in vettori Xi le serie di almeno 2 elementi X consecutivi e in vettori Zi le serie di almeno 2 elementi consecutivi Z e, qualora vi fossero elementi isolati, raggrupparli nel vettore che raggruppava gli elementi precedenti ad esso.

nel caso di esempio, il risultato da ottenere sarebbe il seguente:
X1=(X, X, X, Z, X) : i primi 3 elementi, consecutivi, che soddisfano la condiz. X, l'elemento isolato che soddisfa la condiz. Z e l'elemento che soddisfa la condizione X
Z1=(Z, Z, Z)
X2=(X, X, X)

ho effettuato numerosissimi tentativi (soprattutto con cicli for ed if), ma non sono riuscito a raggiungere l'obiettivo.

sicuro che qualcuno avrà piacere di confrontarsi con questo quesito, ringrazio in anticipo chiunque possa darmi una qualsiasi dritta in merito.

2 Risposte

  • Re: Selezione e raggruppamento elementi di un vettore secondo multiple condizioni

    Risposta standard:
    [*] pubblica un esempio concreto di dati di input
    [*] pubblica un esempio del relativo risultato atteso
    [*] pubblica il codice che hai scritto perchè si possano individuare gli eventuali errori

    La descrizione che hai dato non è sufficiente.
    Considera anche che la definizione dinamica delle variabili è una procedura decisamente sconsigliata.
  • Re: Selezione e raggruppamento elementi di un vettore secondo multiple condizioni

    Ciao a tutti, approfitto di questa discussione per chiedervi consigli riguardo a un problema simile:

    nel mio programma carico dati a gruppi di 4, ogni dato è composto da valori x e y;
    il mio scopo raggruppare i 4 punti che siano piu omogenei tra loro, ma necessariamente composti da due valori con indice 1 o 2 (quindi indici 11, 22 o 12 vanno bene) e due valori con indice 3 o 4 (quidni 33, 44 o 34 vanno bene).

    i dati in input messi in matrice sono tipo:

    X Y id set

    0.312274000000000 0.509563000000000 1 1
    0.309280000000000 0.447119333333333 2 1
    0.300255333333333 0.482997666666667 3 1
    0.288491666666667 0.504988666666667 4 1
    0.282057333333333 0.460998333333333 1 2
    0.291570333333333 0.438858000000000 2 2
    0.281972666666667 0.526107333333333 3 2
    0.273691333333333 0.473833000000000 4 2

    dove idx è l'indice di ogni valore e set a che set di aquisizione corrisponde.

    il risultato che vorrei ottenere sono gli indici id e set dei 4 valori che corrispondono al vincolo di cui sopra

    Grazie in anticipo per l'iuto
Devi accedere o registrarti per scrivere nel forum
2 risposte