各列の値または単語の数を数えるデータセットがあり、「OK」の数を数えて、各列の行の一番下に計算値を置きたいと考えています。
例えば:
| 腹筋 | そして | 広告 |
| ああ、ああ、 | わかりました | わかりました |
| ああ、ああ、 | わかりました | わかりました |
| ああ、ああ、 | わかりました | わかりました |
| わかりました | わかりました | わかりました |
| わかりました | わかりました | わかりました |
| わかりました | わかりました | わかりました |
| わかりました | わかりました | わかりました |
| わかりました | わかりました | わかりました |
| わかりました | わかりました | わかりました |
| 6 | 9 | 9 |
For(i=1,i<=NCol(dt),i++,
Column(dt,i)[NRows(dt)] = Char(N Rows( dt<< get rows where( As Column(dt,i) == "OK")));
)
上記のコードを使用していましたが、ロックされた列に値を入力できないようです。
try() を使用すると、それは無視され、スクリプトが続行されます。
ロックされた列には数式が含まれています。これを書き込む別の方法はありますか、または上書きロックされた列エラー、私はjmp 14を使用しています
自動化とスクリプト作成Re: 各列の値または単語の数を数えるおそらくこれを行うにはもっと直接的な方法がありますが、これはうまくいくと思います。 0,1 の値の列を作成します。1 は OK を示します。次に、Table Summary を使用して 1 の合計数を求めます。それをデータテーブルにして、(列名を一致させた後)元のデータテーブルと連結します。
Re: 各列の値または単語の数を数えるJMP は Excel ではないことに注意してください。列内のすべての値は同じ形式に従うため、列の下部に累計を表示することはできません。状況に応じて、テーブル変数を使用できます。これをテーブルスクリプトとして設定してみてください。
dt = Current Data Table();
For( i = 1, i <= N Col( dt ), i++,
dt << Set Table Variable( (Column( dt, i ) << Get Name) || "OK", N Items( dt << Get Rows Where( Column( dt, i )[Row()] == "OK" ) ) )
);
もちろん、最新の状態にするには実行する必要がありますが、合計を常に表示できるようになります。

Re: 各列の値または単語の数を数えるテーブルの下部に集計値を追加してデータ テーブルの構造を変更するため、数式列の問題を回避する最も簡単な方法は、各列の数式を削除することです。数式を削除してもセル値は削除されず、静的な値になるだけです。
For(i=1,i<=NCol(dt),i++,
try(Column(dt,i)<<DELETE formula=""></DELETE>
<P>Try() 関数は、数式のない列の数式を削除しようとする際の問題を回避するだけです。</P>
<P> </P>