Specifying a range in a double
7 ビュー (過去 30 日間)
古いコメントを表示
% Values is a 401x1 double: 1 - 401
% In this example, I want to take the mean from Values(90) to Values(110).
% Specify Bounds
MAX = 90; %
MIN = 110;
idy = find(Values == MIN);
idz = find(Values == MAX);
Values = mean(Values(idy:idz));
This is simple & should be returning 1 number from Values after taking the mean, but it's resulting in a 1x7^6 double.
Is there a syntax error that I'm overlooking here?
1 件のコメント
Fangjun Jiang
2020 年 5 月 15 日
code is simple enough. run the code line by line and see where is wrong.
The numerical value for MAX and MIN seems to be reversed. Is that correct?
採用された回答
William Alberg
2020 年 5 月 15 日
I think, that you want to do this:
MAX = 110;
MIN = 90;
id = find( (MIN <= Values) & (Values <= MAX) )
Values = mean(Values(id))
I switched the MIN/MAX values
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Logical についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!