问题
I have a matrix A
with m
rows and I'd like to set a specific element of each row equal 1. The column index varies from row to row and is specified by a column vector a
(with m
values). That is, I want A_{i,a_i} = 1
. Is there a quick way to do this in Matlab (without a for-loop)?
回答1:
I solved it using the sub2ind function:
A(sub2ind(size(A), 1:numel(a), a')) = 1
来源:https://stackoverflow.com/questions/20957317/set-a-value-of-a-specific-column-for-each-row-of-a-matrix