Existe-t-il un moyen d'obtenir rapidement le nombre de valeurs négatives dans une colonne ?Bonjour à tous!
Je dois compter le nombre ou le pourcentage de nombres négatifs dans la colonne "Retard d'arrivée".
Cette fonctionnalité ne semble pas se trouver dans les opérations de menu et les formules du JMP.
Il y a un =countif(,"<0") dans Excel qui peut faire rapidement.
JMP veut utiliser une boucle ?
dt = Open( "$SAMPLE_DATA/Airline Delays.jmp" );

Re : Existe-t-il un moyen d'obtenir rapidement le nombre de valeurs négatives dans une colonne ?dt = Open( "$sample_data/Airline Delays.jmp" );
s=As Constant( N Rows( Loc( dt[0, "Arrival Delay"] < 0 ) ) );Wait(0);
bonne méthode!!
Re : Existe-t-il un moyen d'obtenir rapidement le nombre de valeurs négatives dans une colonne ?
Je l'utilise en JSL.
Merci de me donner des instructions précises.
Merci Craig!Re : Existe-t-il un moyen d'obtenir rapidement le nombre de valeurs négatives dans une colonne ?La réponse de Jim est excellente; en voici deux autres qui évitent de créer une colonne mais ont des effets secondaires différents :
dt = Open( "$sample_data/big class.jmp" );
// using table subscripts, suitable for use in a column formula.
// As Constant calculates the result once, not for every row.
As Constant( N Rows( Loc( dt[0, "age"] < 15 ) ) ); // 27
// using row selection, suitable for JSL programs. Avoids a temporary
// matrix but does change the selection state of the table.
dt << selectwhere( age < 15 );
N Rows( dt << getselectedrows ); // 27
Ce que vous choisissez dépend un peu de si vous l'utiliserez dans une formule de colonne ou dans un programme JSL ; JMP a ajouté la fonction As Constant (principalement) pour prendre en charge les formules de colonne qui doivent effectuer un calcul coûteux. Sans cela, JMP compterait le nombre de lignes pour chaque ligne, ce qui entraînerait des problèmes de performances N^2.
Explication du premier exemple : dt[0,"age"] renvoie une matrice de la table ( Publier ). 0 signifie toutes les lignes. La comparaison de cette matrice avec < 15 renvoie une matrice de résultats 0 et 1. Loc([ 1 0 1 0]) renvoie une matrice plus petite des emplacements des résultats non nuls (vrais). NRows ou NItems rapporte le nombre d'éléments. Comme Constant n'est pas nécessaire dans un programme JSL si vous capturez la réponse dans une variable.
Re : Existe-t-il un moyen d'obtenir rapidement le nombre de valeurs négatives dans une colonne ?Merci Jim!
Cela semble être le seul moyen.Re : Existe-t-il un moyen d'obtenir rapidement le nombre de valeurs négatives dans une colonne ?Utilisez une variable de transformation avec une formule spécifiée de
Si(:Délai d'arrivée < 0, 1, 0)
Utilisez ensuite Sum comme statistique dans la plate-forme de résumé