How do i retrieve a specific value from a 2D matrix?
1 回表示 (過去 30 日間)
古いコメントを表示
Hello,
I've a matrix from which I want to get a specific value based on earlier calculations. So I want the value of B matched with A based on earlier calculated values (Thus the value of B which belongs to A)
earliercalculatedvalue = value from a certain function
if true
A = [0, 2.5, 5, 7.5, 10, 12.5, 13.5, 15];
B = [0.0433512251001877, 0.043577394493621, 0.0439878459898567, 0.044652541077113, 0.0450839697675535, 0.0458295673490097, 0.0461248505159152, 0.0465317879404617];
Matrix = [A;B];
Wantedvalue=Matrix(A==earliercalculatedvalue,:);
end
Thanks very much in advance!
2 件のコメント
Adam
2018 年 6 月 4 日
And what is wrong with your code specifically? What are you getting as Wantedvalue?
採用された回答
Star Strider
2018 年 6 月 4 日
One approach:
earliercalculatedvalue = 5;
Wantedvalue = B(A == earliercalculatedvalue) % Simplest
Wantedvalue = interp1(A, B, earliercalculatedvalue,'linear','extrap') % More Robust
give the same result for both:
Wantedvalue =
0.043987845989857
Wantedvalue =
0.043987845989857
0 件のコメント
その他の回答 (1 件)
参考
カテゴリ
Help Center および File Exchange で Logical についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!