Removing/clearing NaN/0 values from matrix/array data

2 次查看(过去 30 天)
Hi,
So I have two - 8640x1 arrays of data
  • one represents wind speed every 5 minutes over a month
  • the other represents rain intensity every 5 minutes over the same month
I have a function that loops these values into a series of calculations. However, the code is not wokring for some of it. I believe this is down to one of the functions I am using can not have a 0 input.
Therefore I need to clear my data of 0 values.
I know how to do this for an indivdual array such as
B = A(A~=0)
However, imagine my data set was
A =
A = [0;9;6;4;3];
B = [1;3;4;0;0];
I need it so that when there is a 0 value in B, the corresponding row in A must also be removed even if there is a value for this.
So that my final value arrays looks like such :
A = [9;6];
B = [3;4];
Hope that makes sense.
Thanks:)

回答(2 个)

Sargondjani
Sargondjani 2021-3-9
A1 = A(A~=0 & B~=0) should work

Mehmed Saad
Mehmed Saad 2021-3-9
A = [0;9;6;4;3];iA = A~=0;
B = [1;3;4;0;0];iB = B~=0;
ind = iA&iB;
A = A(ind)
B = B(ind)
A =
9
6
B =
3
4

类别

Help CenterFile Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by