question of applying sum() to the matrix with zero values

4 views (last 30 days)
my matrix is X=[1 0 0 ;0 0 0;0 9 0](actual matrix is larger than this and having less values more zoros) my question is ,when applying sum(X),it gives error message "??? Subscript indices must either be real positive integers or logicals."

Accepted Answer

Azzi Abdelmalek
Azzi Abdelmalek on 7 Sep 2013
You've probably used sum as a variable in your code. Try this
clear sum
X=[1 0 0 ;0 0 0;0 9 0]
sum(X)
  3 Comments
Image Analyst
Image Analyst on 7 Sep 2013
Be aware that sum will be over columns and will be a ax3 array. If you want the sum of the whole array, you can do this:
theSum = sum(X(:));
which turns X into a 1D vector before it gets summed. theSum will then be a scalar (single number) rather than a 1 by 3 array.

Sign in to comment.

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!