Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

Data reading/Filtering, Excel>>Array

Asked by Hello kity on 11 Dec 2012

Hi,

I have an excel file with data.

an example

colom1:
1
2
3
4
5
empty
empty
6
7
8
9
10
empty 
empty

What I want to do is this:

  • get every number above the first empty cell (in example the number 5 and 10)
  • then calculate, 5 - 1 , 5 -2 , 5-3 ,5-4

same for the next set of data (10-6 10-7 10-8 10-9), this for the entire colom.

With xlsread I read the file, then select the colom with num(:,x). I get an arraw with numbers then 2 Nanns between each set of data....

what then to do...

0 Comments

Hello kity

Products

No products are associated with this question.

2 Answers

Answer by Vishal Rane on 11 Dec 2012

Use isnan and find functions.

Your data read from excel is something like :

a = [ 1 2 3 4 5 NaN NaN 6 7 8 9 10 NaN NaN 11 12]
find(isnan(a))

will give you the locations of all NaN in the array.

1 Comment

Vishal Rane on 11 Dec 2012

Use the NaN locations to further build your logic

Vishal Rane
Answer by Hello kity on 11 Dec 2012
Edited by Hello kity on 11 Dec 2012

I used isnan and find. That gives me a new array with all the locations of the isnans.

for example

1 2 3 4 5 NaN NAn

I get 6 and 7 as NaN... but how can I say if you find the 6th as NaN then use the 5th to calculate, 5-1 and 5-2 etc..

thank you

0 Comments

Hello kity

Contact us