are the first 3 elements of a vector NaN?

1 view (last 30 days)
Dear all,I have
A={
[NaN]
[NaN]
[NaN]
[3]
[3]
[6]
[4]}
I want to find a rule that will tell me if the first 3 elements of a vector A are NaN or not
thanks
  2 Comments
Yash
Yash on 11 Aug 2012
you can apply condition on them
Sabbas
Sabbas on 11 Aug 2012
coul;d you please be more specific?

Sign in to comment.

Accepted Answer

Matt Fig
Matt Fig on 11 Aug 2012
A is a cell.
all(cellfun(@isnan,A(1:3)))

More Answers (1)

Image Analyst
Image Analyst on 11 Aug 2012
Edited: Image Analyst on 11 Aug 2012
Method 1. Inspects the first three cells ONLY.
A = {
[NaN]
[NaN]
[NaN]
[3]
[3]
[6]
[4]}
if isnan(A{1}) && isnan(A{2}) && isnan(A{3})
uiwait(msgbox('The first three cells are nans'));
else
uiwait(msgbox('The are not nans.'));
end
Method 2. Somewhat more robust and flexible.
% Define starting and ending cell to inspect.
firstElementToCheck = 1;
lastElementToCheck = 3;
nanLocations = isnan([A{:}])
if sum(nanLocations(firstElementToCheck:lastElementToCheck)) == (lastElementToCheck - firstElementToCheck) + 1
message = sprintf('The cells between %d and %d are all NaNs', ...
firstElementToCheck, lastElementToCheck);
uiwait(msgbox(message));
else
message = sprintf('The cells between %d and %d are NOT ALL NaNs', ...
firstElementToCheck, lastElementToCheck);
uiwait(msgbox(message));
end

Categories

Find more on Matrices and Arrays in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!