Re: questions sur la sélection des opérations logiquesisMissing (x) renvoie 1 si x est manquant, 0 si x n'est pas manquant. Vous pouvez également simplement utiliser
isMissing (x) sans le comparer à 1 ou 0; la valeur retournée est la même, mais il pourrait être plus facile à lire:
If( :Height > "60" & isMissing( :Weight ) , ... )
or
If( :Height > "60" & ! isMissing( :Weight ) , ... )
remarquez le! ce qui signifie ne pas .
Re: questions sur la sélection des opérations logiquesmerci ça marchequestions sur la sélection des opérations logiquesLorsque j'utilise le script ci-dessous, la ligne 4 ne change pas en "oui", mais les autres lignes changent. Pourriez-vous aider à vérifier à nouveau? Mon but est de réaliser que lorsque: Hauteur> "60" & (et) isMissing (: Poids) == 0, les deux réalisent, puis la valeur de la hauteur passe à "Oui", les autres valeurs ne changent pas en hauteur.
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
// Set the value of JACLYN's weight to missing
// to allow for the test case, where the
// :Height is greater than 60, but the :Weight
// is missing
dt:Weight[4] = .;
// Since the column :height is numeric and a
// character value of "Yes" is to be placed in
// that column, the column needs to be changed
// to Data Type of Character
dt:Height << data type(character);
// Now a For Each Row() with a two level
// comparison can be used to change the
// described value
For Each Row(
If( :Height > "60" & isMissing( :Weight ) == 0,
:Height = "Yes"
)
);
