are the first 3 elements of a vector NaN?

1 vue (au cours des 30 derniers jours)
Sabbas
Sabbas le 11 Août 2012
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 commentaires
Yash
Yash le 11 Août 2012
you can apply condition on them
Sabbas
Sabbas le 11 Août 2012
coul;d you please be more specific?

Connectez-vous pour commenter.

Réponse acceptée

Matt Fig
Matt Fig le 11 Août 2012
A is a cell.
all(cellfun(@isnan,A(1:3)))

Plus de réponses (1)

Image Analyst
Image Analyst le 11 Août 2012
Modifié(e) : Image Analyst le 11 Août 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

Catégories

En savoir plus sur Matrices and Arrays dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by