Wie man ein Skript für jede Probe in einer Liste ausführt, wenn mehrere Einträge pro Probe in der Datentabelle vorhanden sind.Ich habe eine Datentabelle, in der die gleichen Proben mehrmals gemessen wurden (siehe Beispiel unten). Die Proben werden durch ihre Kennung getrennt.

Ich möchte, dass mein Skript in der Lage ist, für jede Probe die gleichen Berechnungen durchzuführen, damit ich Kontrollgrenzen bestimmen und eine Kontrollkarte für A, B, C usw. erstellen kann. Ich kenne nicht die Kennung jeder Probe. Ich habe bereits ein Skript, das meine Berechnungen durchführen und die Diagramme für mich erstellen kann, es kann nur nicht für jeden Bezeichner separate Berechnungen durchführen.
Mein erster Durchlauf war, eine Art Schleife zu verwenden, um dies zu tun. Ich habe ein Skript, das jeden eindeutigen Bezeichner in einer Liste zurückgibt und mir die Anzahl der eindeutigen Bezeichner als Einrichtung für die Schleife angibt.
Identifiers = Column( "Identifier") << GetAsMatrix();
Identifiers set = Associative Array( Identifiers);
Unique Identifiers = Identifiers set << Get Keys;
nUnique Identifiers = N Items (Unique Identifiers);
Ich bekomme aber einfach keine Schleife zum Laufen. Gibt es einen besseren Weg, dies zu tun? Oder kann mir jemand zeigen, wie man die Schleife macht?
Ich verwende JMP10.
Dankeschön!
SkriptingBetreff: Wie man ein Skript für jede Probe in einer Liste ausführen lässt, wenn es mehrere Einträge pro Probe in der Datentabelle gibt.Es gibt viele Möglichkeiten, dies zu tun, aber eine besteht darin, Ihren vorhandenen Plattformen einfach einen lokalen Datenfilter hinzuzufügen.Hier ist ein Beispiel mit Graph Builder:
Names default to here(1);
//Open some sample data
dt = Open( "$Sample_data/big class.jmp" );
//Your code
Identifiers = Column( "age") << GetAsMatrix();
Identifiers set = Associative Array( Identifiers);
Unique Identifiers = Identifiers set << Get Keys;
nUnique Identifiers = N Items (Unique Identifiers);
//A window to hold a bunch of graphs
win = New Window("Graphs", graphbox = v list box());
//Open a graph that is filtered to only show each unique identifier
//to keep things organized add it to a single window.
for( i=1, i<=nUnique Identifiers, i++,
win << Append(<BR /> //To get this script I opened graph builder and added a local data filter for one age<BR /> //and then copied/pasted it here and replaced the age with 4Unique Identifiers[i]
Graph Builder(
Size( 534, 456 ),
Show Control Panel( 0 ),
Variables( X( :height ), Y( :weight ) ),
Elements( Points( X, Y, Legend( 2 ) ) ),
Local Data Filter(
Close Outline( 1 ),
Add Filter(
columns( :age ),
Where( :age == Unique Identifiers[i] ),
Display( :age, N Items( 6 ) )
)
)
)
)
);Betreff: Wie man ein Skript für jede Probe in einer Liste ausführen lässt, wenn es mehrere Einträge pro Probe in der Datentabelle gibt.Ich frage mich, ob die Verwendung der integrierten Steuerungskartenplattformen zum Berechnen von Grenzwerten und Diagrammmaßen funktionieren würde, insbesondere wenn Sie der Rolle "Nach Analyse" den Bezeichner zuweisen.
Ich möchte nur nicht, dass Sie viel Zeit mit dem Skripting verbringen, wenn es die bereits verfügbaren Funktionen dupliziert.
Betreff: Wie lässt sich ein Skript für jede Probe in einer Liste ausführen, wenn es mehrere Einträge pro Probe in der Datentabelle gibt.Wie kann ich zusätzliche Berechnungen durchführen, die nach der Kennung gefiltert sind? Ich möchte einige Daten manipulieren und dann meine eigenen Grenzen basierend auf den Daten pro Kennung berechnen, die dann zu jedem der Diagramme hinzugefügt würden, also denke ich, dass jede Art von Filter vor dem endgültigen Diagrammskript kommen müsste. Ich habe ein Skript, das das kann, und ich kann es bei Bedarf posten, aber es ist ziemlich lang. Ich suche wirklich nur nach einer Möglichkeit, das Skript, das ich bereits habe, für jede Kennung und nicht für alle Zeilen in der Datentabelle auszuführen