特定の行セットに対してのみforループが機能するように条件を設定するにはどうすればよいでしょうかこんにちは、
数式を使用してデータ テーブルを操作しようとしていますが、数行のみを読み取りたいと考えています。
Names Default To Here( 1 );
Open( "$SAMPLE_DATA/Cars.jmp" );
r = Current Data Table() << Get rows where( :Make == "Mazda");
For( i = r[1], i <= r, i++,
:HeadIC[i] = :HeadIC[i]/2
);
Show(r);
選択した行のみを反復処理するにはどうすればよいでしょうか?
消費者および市場調査マスカスタマイゼーションRe: 特定の行セットに対してのみ for ループが機能するように条件を付けるにはどうすればよいですかこのような?
Names Default To Here( 1 );
Open( "$SAMPLE_DATA/Cars.jmp" );
For Each Row( If ( :Make == "Mazda", :HeadIC = :HeadIC/2 ));
Re: 特定の行セットに対してのみ for ループが機能するように条件を付けるにはどうすればよいですかあなたの例では、行番号でベクトルを作成したので、「For Each()」も使用できます。これは、特に大規模なデータ テーブル (行数が多い) の場合に高速になります。
Names Default To Here( 1 );
Open( "$SAMPLE_DATA/Cars.jmp" );
r = Current Data Table() << Get rows where( :Make == "Mazda");
for each({cr,ii}, r,
:headic[cr] = :headic[cr]/2
);
Re: 特定の行セットに対してのみ for ループが機能するように条件を付けるにはどうすればよいですかこれをわかりやすく説明してください:
for each({cr,ii}, r,
:headic[cr] = :headic[cr]/2
);
// specifically, where do {cr,ii} come from and what do they do?
コーダーではありません。 Scripting Index でこれを見つけることができませんでした。 Scripting Guide はまだチェックしていません。
Re: 特定の行セットに対してのみ for ループが機能するように条件を付けるにはどうすればよいですかこんにちは、その関数の使い方がわかりません。スクリプト インデックスで見つけることができません。例を示してもらえますか? あなたが与えたコードを実行しようとすると、エラーがポップアップします。
Re: 特定の行セットに対してのみ for ループが機能するように条件を付けるにはどうすればよいですかFor Each() は JMP16 で導入された新しい関数であるため、古いバージョンの JMP を使用している場合、スクリプト インデックスで見つけることができません (エラーが発生します)。 必要に応じて、for ループに変換できます。
Names Default To Here( 1 );
Open( "$SAMPLE_DATA/Cars.jmp" );
r = Current Data Table() << Get rows where( :Make == "Mazda");
/*For Each({cr,ii}, r,
:headic[cr] = :headic[cr]/2
);*/
For(ii = 1, ii <= N Items(r), ii++,
cr = r[ii];
:headic[cr] = :headic[cr]/2;
);
For Each(names, container, locals, body) (jmp16 ヘルプ)
Re: 特定の行セットに対してのみ for ループが機能するように条件を付けるにはどうすればよいですかそれは奇妙だ。 どちらも私にとってはうまくいきます。 各ソリューションの完全なコードを別のスクリプト ウィンドウにもう一度投稿してみてください。 他のすべてを閉じます。 最初に 1 つのスクリプト ウィンドウからコードを実行し、コードが想定どおりに動作することを確認します。 次に、まだテストする必要があるコードを含む他のスクリプト ウィンドウを除いて、すべてをもう一度閉じます。