間違った値を与えるイテレータこんにちは、
私はJSLに不慣れで、次のコードを機能させることを試みていました。
dx = Open("Manually Logged Data.jmp");
Current Data Table (dx);
numberOfRowsManually = nrows(dx);
Column("End");
colManually = Column(4);
For (i = 1, i <= numberOfRowsManually, i++, print(colManually[i]));
print (i);
"End"列は14行あり、変数iを1から14の間で反復しようとしていますが、チェックするためにiの値を出力するとログに15が返されます。データテーブルには14行しかないので、14を返すべきではありませんか。
任意の助けがいただければ幸いです。
再:間違った値を与えるイテレータFor()関数を使用して反復する方法、Print()を使用してテストする方法、またはデータ列の各値をLogに実際に出力する必要があるかどうかを理解する必要があるかどうかわかりません。後者の場合、このコードはもっと簡単な方法を示します。
dx = Open( "Manually Logged Data.jmp" );
For Each Row(
Print( dx:End );
);
再:間違った値を与えるイテレータわかりました、助けてくれてありがとう!
再:間違った値を与えるイテレータループを終了するために、JMPはイテレータを1増やしてそれからループ内に留まるように設定した条件を満たしているかどうかを確認します。 この場合、イテレータの値がループを終了した後に表示されているので、最初の値が表示されます。ではないループを再度実行します。 この例では、2がループ内の最後の値であることに注意してください。ただし、3はあなたの例のように表示されます。
Names default to here( 1 );
For( i=1, i <= 2, i++,
print( "Inside loop: " || char( i ) );
);
print( "Outside loop: " || char( i ) );