Line, Column and Magnitude in a matrix.

3 次查看(过去 30 天)
Hello good day.
I want to find a code that indicates the Line, Column and Magnitude of an element of an array. For which I have prepared the following code:
% ____________________________________________
clc; clear; close all; short format
N = 3;
vctrs = [1 12 14
       12 51 14
       17 81 91
       19 10 12
       15 2 33
       16 17 18
       13 21 13
       15 31 3];
    [val, pos] = min (vctrs);
   for b = 1: 1: N
     Value (b) = val (1, b)
     [line (b), column (b)] = find (vctrs == Value (b))
end
% ____________________________________________________
This code gives me the result:
Value =
     1 2 3
line =
     1 5 8
column =
     1 2 3
Which I am looking for, but if I repeat any of those minimum values ​​in any line or column it marks the following error:
_________________________________________________
In an assignment A (I) = B, the number of elements in B and I must be the same.
Error in practice2 (line 16)
     [line (b), column (b)] = find (vctrs == Value (b))
___________________________________________________
The magnitudes that form the matrix are constantly changing and sometimes it does not show me this error, but this is not sure.
I would like the code to indicate the minimum magnitude per column as well as its position and if in a single column there are two or three repeated minimums that only mark the position and magnitude of the first minimum value of that column.
I hope you help me.
Regards.
  3 个评论
darova
darova 2019-10-28
Function min already returns number of line/row in pos variable, val - magnitude
[val, pos] = min(vctrs);
Ricardo Gutierrez
Ricardo Gutierrez 2019-10-28
Hello
Good morning.
Your answer is very helpful
Thank you.

请先登录,再进行评论。

回答(0 个)

类别

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

产品


版本

R2015a

Community Treasure Hunt

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

Start Hunting!

Translated by