Ho un'espressione che fornisce una matrice e voglio accedere a un elemento, senza creare una variabile temporanea, qualcosa come questo cov(M)(1,1)
. Come posso farlo?MATLAB espressione colonna indicizzazione
Grazie!
Ho un'espressione che fornisce una matrice e voglio accedere a un elemento, senza creare una variabile temporanea, qualcosa come questo cov(M)(1,1)
. Come posso farlo?MATLAB espressione colonna indicizzazione
Grazie!
Ho una funzione come questo nel mio percorso:
getRegion = @(matrix, rows, cols) matrix(rows,cols);
In modo che posso quindi chiamare:
getRegion(cov(M), 1, 1);
Sarebbe anche funzionare se si voleva una regione più ampia:
getRegion(cov(M), 1:2, 2);
E 'possibile utilizzare funzioni anonime:
>> f11 = @(M) M(1,1);
>> M = [1 2; 9 4];
>> cov(M)
ans =
32 8
8 2
>> f11(cov(M))
ans =
32
O per i puristi, qui è senza variabili intermedie a tutti:
>> feval(@(M) M(1,1), cov(M))
ans =
32
bella soluzione, ma nella sua dichiarazione FEVAL pensare di cambiare il parametro su un nome diverso da quello 'M' per chiarezza. – Geoff
bella soluzione .. – yassin