Hallo,
Ich habe ein Projekt und mein Ziel ist es, aus meiner Datentabelle (1) den durchschnittlichen, maximalen und minimalen Wert für jede Spalte zu extrahieren und die Ergebnisse in eine neue Tabelle (2) zu schreiben.
Ich habe diesen Teil des Codes gefunden und er scheint für einige Spalten zu funktionieren, aber nicht für alle. Ich habe ungefähr 300 Spalten und ich habe die Ergebnisse für nur zwanzig davon.
For( i = 1, i <= N Col( dt ), i++,
If (:Trial[i] =="TrialName",
If( Column( dt, i ) << get data type == "Numeric",
Write( "\!n", Column( dt, i ) << get name );
Write( Column( dt, i ), "\!nMin: ", Col Min( Column( dt, i ) ) );
Write( "\!nMax: ", Col Max( Column( dt, i ) ) );
Write( "\!nAverage: ", Col Moving Average( Column( dt, i) ) );
Write ("\!n");
)
)
); Ich kann die Ergebnisse in den Protokollen sehen, aber ich schaffe es nicht, die Ergebnisse in die rechte Spalte meiner neuen Tabelle (2) zu schreiben.
Mehr sehen...Dieser Code zeigt etwas wie:
Spalte 1
Minute: 10
Maximal: 50
Durchschnitt: 30
Hier ist ein Beispiel für das, was ich möchte:
Tabelle 1: Spalte 1 : Spalte 2 : --> Tabelle 2 -----> Spalte 1 : Spalte 2 :
10 45,2 Maximal : 50 Maximal : 52,4
20 48,3 Minuten: 10 Minuten: 18,3
30 36.7 Durchschnitt: 30 Durchschnitt: 40,18
40 52.4
50 18.3
--->
1. Ich denke, alle meine Daten werden nicht als Zahlen betrachtet, daher möchte JMP Min, Max und Durchschnitt nicht berechnen, aber ich habe keine Möglichkeit gefunden, den Datentyp zu "erzwingen".
2. Ich schaffe es nicht, meine Ergebnisse in die Spalten der Abschlusstabelle (2) zu schreiben.
Ich bitte nicht um die vollständige Antwort, sondern nur um Tipps, weil ich wirklich feststecke.
Danke !
Um in eine andere Tabelle zu schreiben, könnten Sie einige dieser Add Rows() oder New Column() verwenden. Write() druckt nur die Werte in das JMP-Protokoll. Dann gibt es auch Subskription von Datentabellen , könnten Sie möglicherweise Tabulate() oder Summary() verwenden, um die Statistik zu berechnen (vielleicht sogar Distribution in Kombination mit make into datatable).
Um numerische Werte zu "erzwingen" (seien Sie vorsichtig, da dies zu einem Datenverlust führen kann und wird), können Sie versuchen, << Set Data Type ("Numeric") zu verwenden.
Weitere Informationen zu Funktionen finden Sie im Skripting-Index im Hilfemenü von JMP
Das von Ihnen beschriebene Projekt kann in JMP mithilfe einer der integrierten JMP-Plattformen generiert werden.Und sobald die Plattform interaktiv ausgeführt wird, kann die JSL zum Ausführen direkt von JMP bezogen werden.Ich schlage vor, Sie gehen einen anderen Weg zu Ihrer Lösung.
Nachfolgend finden Sie die Anfangsdatentabelle und die resultierende Datentabelle nach dem Ausführen der Plattform.


Sie können mit JMP interaktiv alles bekommen, was Sie wollen. Ich werde mit Fitness aus dem Sample Data-Ordner illustrieren. Angenommen, die Datentabelle ist geöffnet.
Schritt 1: Statistik berechnen
- Starte den Verteilung Plattform mit allen relevanten Datenspalten ( Alter durch MaxPulse ).
- Klicken Sie mit der rechten Maustaste auf die Zusammengefasste Statistiken Tabelle und auswählen Kombinierte Datentabelle erstellen .
Schritt 2: Ordnen Sie die Ergebnisse nach Ihren Wünschen neu an.
- Auswählen Tabellen > Teilen . Auswählen Y Spalte und klicken Sie auf Geteilt durch . Auswählen Spalte 2 und auswählen Spalte teilen . Auswählen Alle behalten . Klicken OK .




Ich meine nur, um einen schnellen, interaktiven Prozess zu veranschaulichen. Es kann in einem Skript als erfasst werden @txnelson empfohlen. Es kann bei jedem Schritt nach Bedarf angepasst werden.