数式エディターでカスタム関数の一部だけでなく、カスタム関数も使用できるのは素晴らしいことです。
カテゴリの変換コマンドを使用すると、
New Custom Function( "myNamespace", "Add Ten", Function( {x, y = 10}, x + y ), << Transform Category( "Custom" ));からhttps://www.jmp.com/support/help/en/16.2/#page/jmp/create-custom-functions-transforms-and-formats.shtml
右クリックの新しい数式列メニューに表示され、数式を含む列が生成されます。

私はちょうど始めたばかりです@txnelsonのアプローチ
https://community.jmp.com/t5/Discussions/Formula-for-Number-of-Unique-Categories-in-Column/mp/55284/highlight/true#M31262
列を生成するには一意のカウント値 - ただし、数式を入力する代わりに、カスタム関数を使用したいと思いました。
手動で生成された数式列は機能しますが、カスタム関数を使用する列は機能します。一意のカウントしません。
エラーメッセージが出て失敗する

にxがあるようですによる()式は列名に置き換えられません。
それで、使用してくださいEval(置換()問題を解決するには?
...でもどうやって?
と
Eval(Substitute(Expr(Summarize( values = by( _col_ ) )),Expr(_col_),Name Expr(x) ));
分かりました

- 列式では :x は :x[row()] として扱われるためです。 ああ...
これに沿って、なぜこれが機能するのか疑問に思い始めます。

[注意: 赤いジグザグ線はユーザーに次のことを伝えているだけです。印刷する列の式に使用するのは良い考えではありません]
なぜ Jmp は送信する必要があることを知っているのでしょうか値を取得するコラムへ:セックスそしてそうではありません:セックス[行()]。
そして、実際に戻ってくるのはなぜですか:セックス[行()]列ではなく 2 行目:セックス?
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
Add Custom Functions(
New Custom Function(
"custom",
"count unique",
Function( {x},
As Constant( Summarize( values = by( x ) ) );
N Items( values );
),
<<TRANSFORM category=""></TRANSFORM>
こんにちは@ホギ、
これが賢いアプローチかどうかはわかりませんが、次のスクリプトは機能します。 eval挿入関数を使用しました。 お役に立てれば幸いです。
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
Add Custom Functions(
New Custom Function(
"custom",
"count unique",
Function( {x},
Eval( Parse( Eval Insert( "As Constant( Summarize( values = by( :^x^ ) ) )" ) ) );
N Items( values );
),
<<TRANSFORM category=""></TRANSFORM>うーん、残念ながら、それは機能しません:

次のエラー メッセージが生成されます。

したがって、 like と同じように
Substitute (..., Expr(_col_),Name Expr(x))
それを機能させるには関数呼び出しが必要だからだと思います
custom:count unique( "sex" )
代わりに、もし
custom:count unique( :sex )
同じ質問の以前のバージョン (2018 年) を見つけました。
カスタム関数での列参照
Jmp サポート TS-00063463 からの明確な返信
