display result (numbers)
4 views (last 30 days)
Show older comments
Hello,
I have a problem in displaying result.
I have this equation :
ps1=((max(max(X1))-mean(mean(X2)))/ (std2(X2)));
Normally, the result is for example '7.473958' but it is displayed '8' !!!
what is the problem please ?
0 Comments
Accepted Answer
Steven Lord
on 30 Jun 2020
When you take the max of an integer array, the result is of the same integer type.
When you take the mean of an integer array, the result is (by default) double precision.
When you perform arithmetic on an integer array and a scalar double precision value, the result is of the integer type. See the "Arithmetic Operations on Integer Classes" section on this documentation page.
Convert the output of max from an integer type to double using the double function before you subtract the mean from it.
More Answers (1)
See Also
Categories
Find more on Characters and Strings in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!