JMP 13.2.1にデータテーブルを更新するための更新オプションはありますかこんにちは、
Excel から JMP 13.2.1 のデータ テーブルにデータをインポートしました。 Excel ファイルの一部のセルが更新されていますが、更新されたセルを含む Excel ファイルからデータをインポートできるかどうか疑問に思います (JMP データ テーブルのデータを参照するようなもの)。 行数や列数、列見出しが変更されていないことに注意してください。数字が違うだけです。
ありがとう
Re: JMP 13.2.1 にデータテーブルを更新するためのリフレッシュオプションはありますかこのスクリプトは、少し異なるシナリオで役立ちます (「Wetterdaten.jmp」を適切なものと設定に変更する必要があります。最初のレポートにはソース スクリプトを使用するのが最適です)。
Byron が提案したようにテーブルを更新すると、テーブルのプロパティは保持されますが、再コード化された (上書きされた) 列や欠損値の埋め込みなどのデータ クリーニング手順が上書きされます。 これらは Update テーブルによって上書きされます。
まず現在のテーブルの行数を取得し、インポートされたテーブルから行数を削除してから、最後の新しいテーブルを連結すると、「更新によってすべての作業が破壊された」という痛みを伴う目覚めを回避できます。
// Define current data table (current data)
dt1 = Current Data Table();
// Check number of rows in actual data table (current recorded and cleaned data)
n_rows = NRows();
// Open Excel file to read new data -> will open a new data table with the same name and all the previous and new data
dt2 = Open("Wetterdaten.xlsx",
Worksheets( {"Import Data"} ),
Use for all sheets( 1 ),
Concatenate Worksheets( 1 ),
Create Concatenation Column( 0 ),
Worksheet Settings(
1,
Has Column Headers( 1 ),
Number of Rows in Headers( 1 ),
Headers Start on Row( 1 ),
Data Starts on Row( 2 ),
Data Starts on Column( 1 ),
Data Ends on Row( 0 ),
Data Ends on Column( 0 ),
Replicated Spanned Rows( 1 ),
Suppress Hidden Rows( 1 ),
Suppress Hidden Columns( 1 ),
Suppress Empty Columns( 1 ),
Treat as Hierarchy( 0 )
)
);
// Delete in dt2 all previous worked on data using the n_rows information
dt2 << DeleteRows(1::n_rows);
// Concatenate tables: dt2 appended to dt1, so you avoid creating a new table
dt1 << Concatenate (dt2, Append to first table);
// Close support table dt2
Close(dt2);
もちろん、このスクリプトを自由にさらにカスタマイズすることもできます。 例えば ここでは、Excel インポートの設定を元の数値 + すでにインポートされている現在の行数に変更する、一般的なインポート ルーチンを使用します。 これにより、行を削除することなく直接連結に進むことができます。 また、私はハードコーディングされたテーブル名が好きではないので、最初にテーブル名を確認し、これを Excel インポートのテーブル名として使用します。
ちょっと考えてみます...:)
excelFile = "Wetterdaten.xlsx";
cdt = Current Data Table();
cdtName = cdt << get name();
n_Rows = NRows();
dtHelp = Open(
excelFile,
Worksheets( {eval(cdtName)} ),
Use for all sheets( 1 ),
Concatenate Worksheets( 1 ),
Create Concatenation Column( 0 ),
Worksheet Settings(
1,
Has Column Headers( 1 ),
Number of Rows in Headers( 1 ),
Headers Start on Row( 1 ),
Data Starts on Row( 2+ n_Rows ),
Data Starts on Column( 1 ),
Data Ends on Row( 0 ),
Data Ends on Column( 0 ),
Replicated Spanned Rows( 1 ),
Suppress Hidden Rows( 1 ),
Suppress Hidden Columns( 1 ),
Suppress Empty Columns( 1 ),
Treat as Hierarchy( 0 )
), Invisible
);
cdt << Concatenate (dtHelp, Append to first table);
Close(dtHelp);
Re: JMP 13.2.1 にデータテーブルを更新するためのリフレッシュオプションはありますかありがとうフィル。 今では動作します。 以前、Excel シートを JMP dt として開く必要があるという点を見逃していました。
Re: JMP 13.2.1 にデータテーブルを更新するためのリフレッシュオプションはありますかこんにちは、
Excel ファイルを JMP テーブルとして開いているかどうかはわかりません。 「テーブルの更新」ダイアログで選択するには、JMP テーブルとして開く必要があります。
よろしく、
フィルRe: JMP 13.2.1 にデータテーブルを更新するためのリフレッシュオプションはありますかバイロンさん、詳しい返信ありがとうございます。
問題は、JMP dt と Excel (更新) ファイルのみが開いている場合でも、[テーブルの更新] ダイアログ ボックスに Excel ファイルが表示されないことです。 JMP には依然として関連性のない 3 つのファイル名が表示されますが、それらは現在コンピュータで開かれていません (同封のスクリーンショットを参照してください)。 ありがとう

Re: JMP 13.2.1 にデータテーブルを更新するためのリフレッシュオプションはありますか[テーブル/更新] をクリックすると、現在開いているすべてのテーブルのリストが表示されます。
更新は基本的に内部結合です。
現在アクティブなテーブルは、選択したテーブルで更新できるテーブルです。
他に開いているテーブルがない場合。
次に、JMP で Excel テーブルを開き、スクリプトを追加し、行に色を付け、列名の変更以外の操作を行います。
これが私のメインテーブルです。
次に、新しいバージョンの Excel テーブルを開きます。 JMP の外部で、このテーブルは何らかの方法で編集、変更、または更新されました。
テーブル/更新操作を実行するには:
最初のテーブルを選択します (この時点で開いているテーブルはメイン テーブルと新しいコピーの 2 つだけであることに注意してください)。
テーブル/更新。
ダイアログで新しいコピーを選択します。
一致する列を選択します。
「OK」をクリックします。
これで、新しいテーブルのデータがメイン テーブルのデータを上書きします。
新しいコピーは完全なテーブルである必要はありません。 数行または数列のみが含まれる場合があります。 いずれの方法でも、Main テーブルが更新されます。
Re: JMP 13.2.1 にデータテーブルを更新するためのリフレッシュオプションはありますかありがとうバイロン。 「表」>「更新」メニューは有望に思えます。 更新する dt で [テーブル] > [更新] メニューをクリックしたとき。 「Update」ダイアログボックスが開きましたが、ダイアログボックスの「Update dt.. with data from」セクションで、JMP は現在の dt と関連性のないいくつかのファイル (データテーブル?) 名を表示しました (方法はわかりません)。 /なぜ JMP が表示するファイルを選択したのか)。 更新されたデータを取得するための更新された Excel ファイルを見つける方法が見つかりませんでした。 データを取得する更新された Excel ファイルを選択する方法を教えてください。ありがとう
Re: JMP 13.2.1 にデータテーブルを更新するためのリフレッシュオプションはありますか私は Phil のアドバイスに従いますが、少し異なる方向に進みます。
最初のテーブル (dt1) がすでにすべてフォーマットされ、セットアップされているとします。
生の Excel テーブル (dt2) の新しい「新しい」コピーを取得するソース スクリプトを使用できます。
次に、テーブル 1 をテーブル 2 で更新します。(テーブル メニュー、更新)、または次のようなスクリプトを使用します。
注: 複数の列を使用して、各行の一意の識別子を定義できます。
dt1 << Update(
With(dt2 ),
Match Columns( :Unique = :Unique )
);
Re: JMP 13.2.1 にデータテーブルを更新するためのリフレッシュオプションはありますかはい、それを期待しています。 ソース スクリプトは、JMP テーブルへのインポートを繰り返します。
さらにデータの前処理ステップをスクリプト化する必要があると思います。 例えば:
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
Wait( 2 );
dt:Age << Data Type( "Character" );
dt:Height << Data Type( Numeric, 2 );
また:
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt << Color or Mark by Column( :Age );
Re: JMP 13.2.1 にデータテーブルを更新するためのリフレッシュオプションはありますかJMP データテーブルの「ソース」を右クリックして「実行」を選択すると、最初のデータテーブルで作成した設定 (列やデータ型ごとの行の色など) を持たない新しいデータテーブルが作成されました。
Re: JMP 13.2.1 にデータテーブルを更新するためのリフレッシュオプションはありますかこんにちは、
Excel インポート ウィザードを使用して JMP から Excel ファイルを開くと、データ テーブルにソース スクリプトが表示されます。 それを試してみてください。 役立つかもしれません。
よろしくお願いします。
フィル