Non ho molta familiarità con Matlab quindi mi scuso per questa stupida domanda in anticipo. Vorrei assegnare il numero 1 ad alcune posizioni specifiche di una matrice. Ho un vettore riga e il vettore colonna corrispondente. Ho provato ad assegnare valori a queste posizioni diverse volte. Tuttavia, non ha funzionato. Ecco un esempio di codici di dimensioni più piccole. Supponiamo che ci sia una matrice 4 * 4 e vorrei assegnare matrice (1,1), matrice (2,3) e matrice (3,4) a 1. Questo è quello che ho fatto.Come assegnare un valore a posizioni specifiche di una matrice in MATLAB?
matrix = zeros(4,4);
row = [1 2 3];
col = [1 3 4];
matrix(row,col)=1;
Tuttavia, ho ottenuto risposta come
matrix=[ 1 0 1 1
1 0 1 1
1 0 1 1
0 0 0 0]
Qualcuno può sottolineare quello che faccio male qui? La dimensione effettiva della matrice su cui sto lavorando è in migliaia quindi è per questo che non posso assegnare manualmente quelle posizioni una alla volta. C'è un modo per usare il vettore di riga e il vettore di colonna devo assegnare il valore 1? La ringrazio molto,
Può essere utile: http://stackoverflow.com/questions/6850368/how-can-i-change-the-values-of-multiple-points-in-a-matri x? rq = 1 –
Grazie mille. Ho controllato il post ed è molto utile. – Cassie