列の数式に関する問題を解決する方法コード:
If(
!Contains(col_name_list, "EFT (h)"),
Current Data Table() << New Column(
"EFT (h)",
Numeric,
Continuous,
Format("Fixed Dec", 10, 1),
Formula(
:Name( "duration" ) * 24
)
)
);
エラー:
予期しない「)」。「;」または「,」が抜けている可能性があります。
9行目 6列目: ))►)
無視された残りのテキストは
)
列 EFT (h) の式の解決問題:
これが何なのか分かりません。
私もこれを試しました:
If(
!Contains(col_name_list, "EFT (h)"),
Current Data Table() << New Column(
"EFT (h)",
Numeric,
Continuous,
Format("Fixed Dec", 10, 1),
Formula(:duration * 24)
)
);
自動化とスクリプトデータアクセスデータのブレンドとクリーンアップRe: 列の数式に関する問題を解決する方法If(
!Contains(col_name_list, "EFT (h)"),
Current Data Table() << New Column(
"EFT (h)",
Numeric,
Continuous,
Format("Fixed Dec", 10, 1),
Formula(
:Name( "EFT (h)" ) * 24
)
)
);
これを使って
Re: 列の数式に関する問題を解決する方法最新バージョンでは、列 duration が列 EFT(h) に置き換えられていることに注意してください。
カンマの問題を見つけるには、括弧をダブルクリックすると、対応する括弧も、囲まれたスクリプトとともにマークされます。
別のオプション: 再フォーマット スクリプトを使用します。
これはコードを実行するのと同じように機能します。つまり、構文がチェックされ、エラーがある場合はエラーのある行がログに表示されます。

このようなチェックを適用すると、コード内のカンマに問題は発生しません。
手動チェックに加えて、いくつかの自動化も役立ちます。たとえば、このウィッシュで提案されているように、コードを自動的に色付けするなどです。
JSL エディターでの高度な構文の強調表示 - 関数は引数を評価しますか?
Re: 列の数式に関する問題を解決する方法不均衡な括弧に関する最も複雑な問題:
for ( i=1, i < 10, i++,
list = { A, B, C ;
E+F;
);

...「バランスのとれた」括弧に関する問題。
閉じ括弧の後ろにカーソルを置くと、対応する開き括弧が表示されます。

それで、すべて大丈夫ですか?なぜ「)」の終わりにエラーメッセージが表示されるのですか?
JMP にはヒントがあります:

それでは、中括弧を確認してみましょう...
興味深いですね、あなたの場合の提案は次のとおりでした:

?
Re: 列の数式に関する問題を解決する方法これらのスクリプトは両方とも私にとっては問題なく動作します
Names Default To Here(1);
col_name_list = {};
dt = New Table("table",
New Column("duration", Numeric, Continuous, Values([1]))
);
If(!Contains(col_name_list, "EFT (h)"),
Current Data Table() << New Column("EFT (h)",
Numeric,
Continuous,
Format("Fixed Dec", 10, 1),
Formula(:Name("duration") * 24)
)
);
一般的に、スクリプトを再フォーマットすると、ほとんどの問題を解決できるはずです。
また、JMPのかなり古いバージョンを使用している場合を除き、このような場合(数式内)にはName()を使用しないことをお勧めします。これは「」nに置き換えられています。
スクリプトガイド > JSL ビルディングブロック > JSL 構文規則 > 名前の JSL 規則

Re: 列の数式に関する問題を解決する方法ありがとうございます。フォーマットを確認しましたが、問題ないようです。このエラーは見つかりません。
Unexpected ")". Perhaps there is a missing ";" or ",".
少し背景を説明すると、私が現在取り組んでいるスクリプトは、JMPの以前のバージョン14か15で書かれたレガシースクリプトです。これは本来の目的には問題なく動作しますが、現在、これを再利用しています。
Name() の使用については知りませんでした。column-name を直接使用することをお勧めします。たとえば、
Names Default To Here(1);
col_name_list = {};
dt = New Table("table",
New Column("duration", Numeric, Continuous, Values([1]))
);
If(!Contains(col_name_list, "EFT (h)"),
Current Data Table() << New Column("EFT (h)",
Numeric,
Continuous,
Format("Fixed Dec", 10, 1),
Formula(:duration * 24)
)
);
または期間 * 24。
初心者です。このコード全体をPythonで再利用する方が簡単でしょうか?その場合、列のパラメータ(型、フォーマット、モデリングタイプなど)をすべて定義する必要があるのでしょうか?よろしくお願いします。
Re: 列の数式に関する問題を解決する方法ありがとうございます。このリンクを確認させていただきます。まだ知りません。
Re: 列の数式に関する問題を解決する方法提供されたスクリプトは問題なく動作しているので、スクリプトを見なければ何が問題なのかを判断するのは困難です。
Pythonで書き直す特別な理由があるのでしょうか?JMP内で引き続き使用される場合、JSLでも実行できるタスクをPythonで実行することは(ほとんどの場合)ないでしょう。