レポートを書く際、データテーブルをWord文書にZIPファイルで埋め込み、後で閲覧者がデータを抽出できるようにします。しかし、その際にデータテーブルの名前を適当に決めてしまったことに気づくことがよくあります。そのため、レポートに保存する前に、もっと適切な名前を付けたいのです。
私が遭遇した問題は、途中で保存したスクリプトの一部 (すべてではない) にデータ テーブルの名前が含まれており、その結果、ホース スクリプトが機能しなくなることです。
この問題が発生しずにデータ テーブルの名前を変更する方法はありますか?
データ テーブルに保存されたスクリプトを非常に堅牢にしたい場合は、次のような JSL を追加できます。
//something like this<BR />dt=current data table();
dt<< Distribution(Continuous Distribution( Column( :Protein ) ));
データテーブルに保存されたスクリプトを操作していない場合は、明示的なデータテーブル名を変数に置き換えることをお勧めします。そうすることで、テーブル名が変更された場合(例えば、テーブル名が追加された場合)でもスクリプトが機能します。
データ テーブル ("emanon") は明示的なテーブル名です。
dt=open("emanon.JMP"); はテーブル名への参照です。dt が評価されると data table("emanon") となりますが、すべてのスクリプトでは単に dt と記述します。
//original script
Data Table( "trends.jmp" ) << Stack(
columns( :Protein, :Purity ),
Drop All Other Columns( 1 ),
Output Table( "Stack of trends (Protein etc.)" )
);
//edit to variable references
<BR />dt=current datatable(); //or some other way to reference the table you're acting on<BR />
dt1=dt<< Stack(
columns( :Protein, :Purity ),
Drop All Other Columns( 1 ),
Output Table( "Stack of trends (Protein etc.)" )
);
although the table name is "Stack of trends (Protein etc.)" the reference for the new table is dt1, which has the added bonus of being much easier to type than the entire table name (that I would misspell and break the script).
Byron_JMPさん、アドバイスありがとうございます!確かにそれで解決すると思います。問題は、グラフなどから生成される大量のコードを保存するのが面倒くさくて、その中にはデータファイル名が含まれているものもあることです。私は作業が早くていい加減なので、何度も再保存してしまいます。完成したらスクリプト全体を調べて、ファイル名が含まれているものを確認する必要があると思います。これは特定の実験のために研究するデータに関するものです。長期的に使用し、場合によっては共有するデータについては、ご提案いただいた解決策を採用すべきだと思います。
スクリプト内でテーブル名を変更したり、テーブル名を別の方法で解釈したりできれば便利ですが、まだそこまで考えていません。別の問題を引き起こす可能性があります。