Matrix caculation about NAN and IFN

3 views (last 30 days)
Hello everyone,
I have a question about Matrix cacluation.
I have two Matrix as follows:
C =A./B
so the elements from A divided by B element . than I get NAN and IFN.
How to ignore them?
Many many Thanks
JM

Accepted Answer

Karim
Karim on 27 Jun 2022
Edited: Karim on 27 Jun 2022
you can use indexing to avoid deviding by zero:
A = [1 0 0; 1 1 0; 3 4 2; 2 3 1];
B = [1 0 2;1 0 14; 0 1 11; 1 1 10];
C = zeros(size(A));
% find indexes of non zero locations
B_logi = B ~=0;
C(B_logi) = A(B_logi) ./ B(B_logi);
% display result
C
C = 4×3
1.0000 0 0 1.0000 0 0 0 4.0000 0.1818 2.0000 3.0000 0.1000
  3 Comments
Karim
Karim on 27 Jun 2022
A = [1 0 0; 1 1 0; 3 4 2; 2 3 1];
B = [1 0 2;1 0 14; 0 1 11; 1 1 10];
C = zeros(size(A));
% find indexes of non zero locations
B_logi = B ~=0;
C(B_logi) = A(B_logi) ./ B(B_logi);
% find indexes of non zero locations
C_logi = C ~=0;
C_nonzero = C(C_logi)
C_nonzero = 7×1
1.0000 1.0000 2.0000 4.0000 3.0000 0.1818 0.1000
histfit( C_nonzero(:) )
Jialin Men
Jialin Men on 27 Jun 2022
Thank you so much.
It really help me solve a big problem.
Many Many Thousands Thanks

Sign in to comment.

More Answers (0)

Categories

Find more on Creating and Concatenating Matrices 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!