Contare Occorrenze Matrice MATLAB

dengel
Salve a tutti..avrei bisogno di un aiuto per contare le occorrenze degli elementi di una matrice escludendo gli zero

es : | 0 0 1 1 |
| 0 2 0 1 | data questa matrice -> 4 1 4 ovvero le occorrenze di 1 ,2 e 3
| 3 0 0 1 |
| 3 3 3 0 |

Come posso fare ? aiuto

Risposte
Summerwind78
Ciao

io userei due vettori per memorizzare quale valore hai trovato e il relativo numero di occorrenze ovvero:
in un vettore memorizzi il valore che hai trovato in una determiata posizione della matrice
nel secondo vettore (a paritá di indice) memorizzi le occorrenze del valore trovato

con due cicli for uno dentro l'altro, scorri le righe e le colonne della matrice e quindi conti le occorrenze

apatriarca
Puoi anche usare la funzione unique per ottenere i valori contenuti nella matrice, contare quindi le occorrenze di ogni valore nella matrice e infine eliminare l'eventuale zero.

Summerwind78
@apatriarca: ma com'é che ogni volta che suggerisco una soluzione, arrivi tu e me la cambi ?? :D

apatriarca
:-D L'idea non era quella di cambiare la tua soluzione, ma fornire una possibile alternativa. Ma rileggendola, credo proprio di aver alla fine fornito la tua stessa soluzione (con il primo ciclo sostituito dalla chiamata a unique). :-D Insomma.. avevo letto con disattenzione e frainteso in parte quello che avevi detto.

Ma in realtà il metodo migliore è probabilmente quello di usare la funzione tabulate, della quale non ricordavo l'esistenza. A patto di non doverlo fare senza fare ricorso a funzioni di matlab di questo tipo ovviamente.

Summerwind78
Io infatti ho voluto dare una soluzione senza l'uso di alcuna funzione propria del linguaggio di programmazione, ma una che fosse piú "generica"

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.