This is my excel file:
Here I read the entire column A of the Excel sheet named "Lazy_eight" but the problem is that I have different sheets in which the column A has a different number of elements. So, I want to import only the numbers without specifing the length of the column vector.
I use the function readmatrix with the following syntax in order to read the entire column:
p_time = readmatrix('Input_signals.xlsx','Sheet','Lazy_eight','Range','A:A')
i get this in matlab workspace:
So, I wish to give to the "readmatrix" function only the first element of the column I want to import but I want that it stops at the last element, without specifing the coordinate of the last element in order to avoid the NaN that you can see in the last image. I want to import only the numbers without the NaN value.
I cannot read the initial and the last element (in this way: 'Range', 'A3: A13') beacuse in every sheet the column A (as the other ones) has a different number of elements.

2 件のコメント

João Mendes
João Mendes 2021 年 4 月 16 日
Maybe you can just import the entire matrix and then, in matlab, isolate the first column? Or that is not what you want?
Giuseppe
Giuseppe 2021 年 4 月 16 日
@João Mendes, thanks for your answer but I'd prefer to avoid to use other variables in my code.

サインインしてコメントする。

 採用された回答

Clayton Gotberg
Clayton Gotberg 2021 年 4 月 16 日

1 投票

Since it seems that you just need to get rid of the NaN values, try using logical indexing with the isnan command.
p_time = p_time(~isnan(p_time));
This will remove all NaN values from the p_time vector.
As an example:
p_time = [5 NaN 3 7 NaN]; %double
eliminate_NaN_logical = ~isnan(p_time)
returns
eliminate_NaN_logical = [1 0 1 1 0]; %logical
and
p_time_cropped = p_time(eliminate_NaN_logical)
returns
p_time_cropped = [5 3 7]; %double
because MATLAB assumes you want a vector with only the elements for which eliminate_NaN_logical is true.

その他の回答 (1 件)

Giuseppe
Giuseppe 2021 年 4 月 17 日

0 投票

Another more rapid solution is to use “rmmissing” function to remove “NaN” values from an array.

製品

リリース

R2020b

質問済み:

2021 年 4 月 16 日

回答済み:

2021 年 4 月 17 日

Community Treasure Hunt

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

Start Hunting!

Translated by