Gibt es eine Möglichkeit, schnell die Anzahl der negativen Werte in einer Spalte zu ermitteln?Hallo zusammen!
Ich muss die Anzahl oder den Prozentsatz der negativen Zahlen in der Spalte „Ankunftsverzögerung“ zählen.
Diese Funktionalität scheint in den Menüoperationen und Formeln des JMP nicht zu finden zu sein.
Es gibt ein =countif(,"<0") in Excel, das schnell erledigt werden kann.
JMP möchte eine Schleife verwenden?
dt = Open( "$SAMPLE_DATA/Airline Delays.jmp" );

Betreff: Gibt es eine Möglichkeit, schnell die Anzahl der negativen Werte in einer Spalte zu ermitteln?dt = Open( "$sample_data/Airline Delays.jmp" );
s=As Constant( N Rows( Loc( dt[0, "Arrival Delay"] < 0 ) ) );Wait(0);
gute Methode!!
Betreff: Gibt es eine Möglichkeit, schnell die Anzahl der negativen Werte in einer Spalte zu ermitteln?
Ich verwende es in JSL.
Bitte geben Sie mir konkrete Anweisungen.
Danke, Craige!Betreff: Gibt es eine Möglichkeit, schnell die Anzahl der negativen Werte in einer Spalte zu ermitteln?Jims Antwort ist großartig; Hier sind zwei weitere, die das Erstellen einer Spalte vermeiden, aber unterschiedliche Nebenwirkungen haben:
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
Was Sie auswählen, hängt ein wenig davon ab, ob Sie es in einer Spaltenformel oder in einem JSL-Programm verwenden. JMP hat die Funktion „As Constant“ (hauptsächlich) hinzugefügt, um Spaltenformeln zu unterstützen, die eine aufwendige Berechnung durchführen müssen. Ohne sie würde JMP die Anzahl der Zeilen für jede Zeile zählen, was zu N^2-Leistungsproblemen führen würde.
Erläuterung des ersten Beispiels: dt[0,"age"] gibt eine Matrix aus der Tabelle zurück ( Post ). 0 bedeutet alle Zeilen. Der Vergleich dieser Matrix mit < 15 ergibt eine Matrix mit 0 und 1 Ergebnissen. Loc([ 1 0 1 0]) gibt eine kleinere Matrix der Positionen der Ergebnisse ungleich Null (wahr) zurück. NRows oder NItems geben die Anzahl der Elemente an. Da Constant in einem JSL-Programm nicht benötigt wird, wenn Sie die Antwort in einer Variablen erfassen.
Betreff: Gibt es eine Möglichkeit, schnell die Anzahl der negativen Werte in einer Spalte zu ermitteln?Danke, Jim!
Das scheint der einzige Weg zu sein.Betreff: Gibt es eine Möglichkeit, schnell die Anzahl der negativen Werte in einer Spalte zu ermitteln?Verwenden Sie eine Transformationsvariable mit einer angegebenen Formel von
If(:Ankunftsverzögerung < 0, 1, 0)
Verwenden Sie dann Sum als Statistik in der Summary Platform