[MatLab] Indici nulli di una matrice
Salve a tutti, vorrei sapere come faccio a scrivere un comando in matlab che, data una matrice di 20 righe e 6 colonne riesca a darmi gli indici delle righe che sono entrambe a zero nella quinta e nella sesta colonna
per esempio data la matrice
dovrebbe restituire 2, 5, 8 e 14
Come faccio? Ho provato
indici_della_colonne_5_e_6_che_sono_a_zero=find(matrice(:, [5, 6])==0);
oppure
indici_della_colonne_5_e_6_che_sono_a_zero=find(matrice(:, (5, 6))==0);
indici_della_colonne_5_e_6_che_sono_a_zero=find(matrice(:, 5:6)==0);
ma non vanno, forse ho capito male il comando find
per esempio data la matrice
230 90 230 60 0 1 60 260 160 100 0 0 70 200 90 210 1 0 240 200 50 120 1 1 60 130 170 230 0 0 150 70 110 240 1 1 230 290 260 200 1 0 210 250 280 180 0 0 120 70 100 80 1 0 180 140 230 160 1 0 260 140 250 110 1 0 150 140 250 210 1 1 200 90 80 150 0 1 220 200 170 190 0 0 230 220 160 50 1 1 90 160 230 270 0 1 180 110 270 270 1 0 170 160 190 250 1 0 290 260 200 260 1 0 150 210 250 50 0 1
dovrebbe restituire 2, 5, 8 e 14
Come faccio? Ho provato
indici_della_colonne_5_e_6_che_sono_a_zero=find(matrice(:, [5, 6])==0);
oppure
indici_della_colonne_5_e_6_che_sono_a_zero=find(matrice(:, (5, 6))==0);
indici_della_colonne_5_e_6_che_sono_a_zero=find(matrice(:, 5:6)==0);
ma non vanno, forse ho capito male il comando find
Risposte
Inserisci un titolo più significativo.. La soluzione più semplice che mi viene in mente è di usare find con il test per le due colonne separatamente e poi fare intersect. Altrimenti un ciclo è una soluzione semplice e abbastanza veloce.