Hello,
I am looking for a function that corresponds to the excel "match" function.
I have an array of (n,32) where n is sated in for loop function as a number of completed loops (so it differs).
DataOutput = zeros(length(phiAStart:phiAStep:phiAEnd),32);
I would like to find the smallest value in column 32 (y) and get the corresponding value in column 1 (x) where y=f(x).
DataOutput(colector,1) = x;
DataOutput(colector,32) = y;
I can not resolve a function (to get x) having y because it's numerically calculated polynomial so I thought about something similar that MATCH function from excel.
Is there any similar function in Matlab or simple script that can be introduced?
I will be thankful for any suggestions or codes that may work.

 采纳的回答

number = min(DataOutput(:,32));
position = find(DataOutput(:,32)==number);
matchingx = DataOutput(position,1)
Works just fine

2 个评论

That will give you all the matching x values. Do you want that or do you want the first such match?
Ok, so what I have is 3rd derivative (f''') from fuction (f)
f''' always has only one root. I just assigned absf'''=abs(f''') to (DataOutput(colector,32)) so it flips negative values of f''' and I am looking for smalest value of absf''' and code above returnes me only one abs(f''') value.

请先登录,再进行评论。

更多回答(2 个)

Steven Lord
Steven Lord 2020-2-20

0 个投票

Call the min function with two outputs. Use the second output to retrieve the corresponding value.

类别

帮助中心File Exchange 中查找有关 Loops and Conditional Statements 的更多信息

产品

版本

R2019a

标签

Community Treasure Hunt

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

Start Hunting!

Translated by