JSL での列の参照JSL に関する基本的な情報が、チュートリアルやインターネット検索からどれだけ欠けているかに常に驚かされます。 膨大な量のアドオンの不要な情報を調べずに、この言語の基本をどのように学び、最終的に必要なものを見つけることができないのか、私にはわかりません。 ディスカッション フォーラムがリソースとして利用できるのはそのためだと思います。
JSLのデータテーブルを指定して列を参照しようとしています。
dt = Open("filepath.jsl");
col = dt:"Column Title/Name";私が Write() を実行すると、列は何も表示されず、参照が参照されていないことを意味します。 列には明らかにデータが入力されています。空ではありません。確認しました。 作るのはばかげたエラーですが、私はそれをカバーしました。 そうは言っても、何が悪いのかわからない。 これはJSLではかなり基本的なことだと思っていましたが、これらの「JSLの非常に基本的なこと」が失敗し、コードのロジックに取り組むことができたときに貴重な数分から数時間のトラブルシューティングが必要になることが継続的にわかっています。 私は、この言語の使用についてマネージャーに苦情を申し立て、Python のような、より論理的で適切に設計されたプログラミング用の言語 (明らかに、JSL はプログラミング ロジック用ではなく統計用です) に切り替えることを提案する傾向があります。
<ため息>。 ご協力いただきありがとうございます。
スクリプティングRe: JSL で列を参照する[注: これのほとんどは以前に書いたものです。 @jthiと答え、ほとんど同じことを言った]
最初に、(少なくとも最初の数章を) 読んでいない場合は、 JMPスクリプトガイド( PDF 、必要に応じて)あなたは本当にすべきです。
JMP はスクリプト言語であり、プログラミング言語ではありません。 これは、JMP のユーザー インターフェイスと密接に結びついており、JMP タスクの自動化を可能にすることを目的としています。 ユーザー インターフェイスを制御していない Python やその他の言語と同じように考えようとすると、フラストレーションが溜まります。
JSLのデータテーブルを指定して列を参照しようとしています。
あなたの質問はその一例です。 「列を参照する」という概念は複雑です。なぜなら、「列」は異なるコンテキスト (たとえば、プラットフォームの呼び出し、列のプロパティの操作、列の式) では異なるものを意味する可能性があるからです。
それで、あなたの例には何の「col」が含まれていましたか? 列に含まれるデータ? その列の特定の行の値?
または、別の方法で尋ねましたか? 必要なものを設定した後、「col」をどこで使用したかったのですか? プラットフォーム呼び出し (たとえば、Distribution(Y(col))? それとも別の場所ですか?
Re: JSL で列を参照する私が正しく覚えていれば、dt:"colname" (As Column() を使用するのと同じ) を使用すると、参照 dt を持つデータテーブル内の "colname" という名前の列の現在の Row() の現在の値に直接アクセスできます。 列への参照を取得するには、Column(dt, "colname") を次のように使用できます。 @ティエリー_S言った。
Names Default To Here(1);
dt = New Table("Untitled",
Add Rows(5),
Compress File When Saved(1),
New Column("Column Title/Name",
Character,
"Nominal",
Set Values({"a1", "b2", "c3", "d4", ""})
)
);
For each row(dt,
col = dt:"Column Title/Name";
Show(col);
);
Row() = 1;
col = AsColumn(dt, "Column Title/Name");
Show(col);
col = Column(dt, "Column Title/Name");
Show(col);私は、JSL ドキュメントが最良であると断言しているわけではありません。 手始めに、これらは良い情報源です:
JMP15 - スクリプトガイド
JMPヘルプ
JMP から直接インデックスを作成する
JMP ヘルプまたはスクリプト インデックスに不足しているものや不明な点がある場合は、JMP が喜んでそれらを改善してくれると確信しています。
@ジェフ・パーキンソン
Re: JSL で列を参照する正しい構文は次のとおりです。 col = Column (dt, "Name")