Betreff: FOR () Loop-Skript funktioniert nichtHier ist ein einfaches Skript, das eine: Time-Spalte erstellt und dann generiert, was meiner Meinung nach Ihre: Run-Spalte sein sollte. Ich generiere die Spalte: Run mit 3 verschiedenen Methoden. All dies können Sie im Scripting Guide nachlesen
Hilfe ==> JMP Documentation Library ... ……… .Scripting Guide
Names Default To Here( 1 );
dt = New Table( "Example",
add rows( 20 ),
New Column( "Time", formula( Random Uniform( .5, 1.5 ) ) )
);
dt << New Column( "Run1",
"numeric",
"ordinal",
formula( If( :Time < 1, Row(), Row() + 1 ) )
);
dt << New Column( "Run2", numeric, ordinal );
For( i = 1, i <= N Rows( dt ), i++,
If( :Time[i] < 1,
:Run2[i] = i,
:Run2[i] = i + 1
)
);
dt << New Column( "Run3", numeric, ordinal );
For Each Row(
If( :Time < 1,
:Run3 = Row(),
:Run3 = Row() + 1
)
);
FOR () Loop-Skript funktioniert nichtIch möchte einen Sequenzierungswert in eine neue Spalte schreiben, nachdem ich eine Bedingung (Zeitwert) oder einen festen Satz von Zeilen überprüft habe.
Belo JMP-Skript Mein Skript unten erstellt eine Nullwertspalte.
Names Default To Here(1);
ROW = N ROW();
Run= New Column("Run", "numeric","ordinal");
n=1;
For(i = 1,
i<=ROW, i++,
If(:Time<1,i,i+1)
)
Jede Anleitung von der Community wird sehr geschätzt.
SkriptingBetreff: FOR () Loop-Skript funktioniert nicht@ txnelson
Vielen Dank für Ihre schnelle Anleitung. Das Skript hat teilweise funktioniert. Meine Zeit ist in der Reihenfolge und die Logik weist jeder Zeile eine neue Nummer zu.
Wie erstelle ich eine Spalte, die Zeilen bis zu 1 Sekunde oder 10 Zeilen zählt, eine Nummer zuweist und den Vorgang bis zum Ende der Tabelle wiederholt?
Danke für deine Hilfe!
Betreff: FOR () Loop-Skript funktioniert nichtIch glaube, das folgende Beispiel macht, was Sie wollen
Names Default To Here( 1 );
dt = New Table( "Example",
add rows( 50 ),
New Column( "Time",
formula( Today() + Random Uniform( 10, 20. ) ),
Format( "h:m:s", 11, 2 )
)
);
dt << run formulas;
dt:time << delete formula;
dt << sort( by( :time ), order( ascending ), replace table( 1 ) );
dt << New Column( "Sequence",
formula(
If( Row() == 1,
start = :time;
count = 0;
);
If( count >= 10 | :Time - Start > 1,
start = :time;
count = 0;
);
count = count + 1;
)
);