Use the values in one matrix as index values to another matrix and replace with a value

2 次查看(过去 30 天)
Hello,
I have a matrix A of size 24 x 365 with certain values and I have a matrix B of zeros of the same size as A. I would like to replace the zeros in B with the value 5 in the position mentioned in A.
For example
I would like B to look like
I would appreciate any help thank you!

回答(1 个)

David Hill
David Hill 2022-3-16
The sizes of A and B in your example are not the same.
m=max(A,[],'all');
B=zeros(m,size(A,2));
a=A+(0:m:m*(size(A,2)-1));
B(a)=5;

类别

Help CenterFile Exchange 中查找有关 Matrix Indexing 的更多信息

产品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by