特定の値を含む古いスプレッドシートから新しい行のスプレッドシートを作成および更新するこんにちはJMPコミュニティ、
私はJMPとJSLに非常に慣れていないので、これら2つの関連タスクを実行するのは困難です。
1)特定のエンティティを含む古いスプレッドシートから新しい行のスプレッドシートを作成するスクリプトを作成したいと思います。 たとえば、男性のすべての行の新しいデータテーブルを作成するスクリプトを作成したいと思います。(下の添付写真をご覧ください)
2)このデータテーブルを自動更新できるようにする必要があります。SSMSの場合のように、フルテーブルがローカルデータベースにあると仮定して、ローカルSQLデータベースからすべての男性のテーブルを更新するためにJMPスクリプトを使用するにはどうすればよいですか自動生成された "Update db"スクリプトに追加しようとしましたが、何をしているのかわかりません。どんな助けでも大いに感謝されるでしょう。
JMPコミュニティに感謝します。



再:特定の値を含む古いスプレッドシートから行の新しいスプレッドシートを作成して更新する @jmpandvba 、
あなたが提供した例では:
NewHt=dt<<SUBSET></SUBSET>
NewHtはあなたのデータテーブルへの参照です。したがって、あなたの更新ステートメントでは、追加したいデータテーブルへの参照を渡しています。私が提供したスクリプトの例では、"dt1"になります。
再:特定の値を含む古いスプレッドシートから行の新しいスプレッドシートを作成して更新するこのスレッドの最後の更新
サブセットの新しいデータテーブルを作成した後、元のデータセットが追加された場合にそれを更新するためのJSLスクリプトを作成する方法を教えてください。
私は、JMPスクリプトガイドの177ページに記載されているJSLの「更新」機能を使用していると思います。
NewHt=dt<<SUBSET></SUBSET>
しかし、今作成した特定のサブセットを使用してこれを行うにはどうすればよいですか。
再:特定の値を含む古いスプレッドシートから行の新しいスプレッドシートを作成して更新する @jmpandvba 、
//Clean up
Clear Log(); Clear Globals(); Close All(DataTables,"No Save");
// Open Sample Data
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
// Subset based on condition
dt << Select Where(:Sex == "M");
// Select some columns
Column(dt,"age")<< Set Selected(1);
dt << Invert Column Selection;
dt1 = dt << Subset(Selected Rows(1),Selected Columns(1));
dt1 << Set Name("Boys In Class");
// Save as spreadsheet
Close(dt1,Save("C:\Test.xlsx")); 再:特定の値を含む古いスプレッドシートから行の新しいスプレッドシートを作成して更新する早速お返事をいただきありがとうございます!もう1つの簡単な質問、年齢以外のすべてのコラムでサブセットを作成したい場合、どうすればよいでしょうか。(私はこのようなスクリプト行を書くと思いますが、列の括弧には何が入りますか?)
subdt = dt << Subset(Column(..........), Output Table Name( "Male summary" ) );
再:特定の値を含む古いスプレッドシートから行の新しいスプレッドシートを作成して更新する @jmpandvba 、
JMPにデータがある場合は、質問の一部に答えるのは簡単です。以下に示すように、新しいデータテーブルまたはスプレッドシートを簡単に作成できます。
//Clean up
Clear Log(); Clear Globals(); Close All(DataTables,"No Save");
// Open Sample Data
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
// Subset based on condition
dt << Select Where(:Sex == "M");
dt1 = dt << Subset("");
dt1 << Set Name("Boys In Class");
// Save as spreadsheet
Close(dt1,Save("C:\Test.xlsx"));
データテーブルをどのように自動更新するかに関しては、JMPスクリプトのバッチ/スケジュール実行が必要です。特定の時間に、アプリケーションにJMPスクリプトを呼び出して実行させることができれば、それを達成することができます。あなたはアイデアのためにJMPのC#またはVBA自動化サンプルを見ることができます。(Z:¥Program Files¥SAS¥JMP¥14¥Samples¥Automation)