以下のようなデータテーブルがあります。

このデータテーブルをJSLマトリックスにインポートしました
Data1 =データテーブル(現在のデータテーブル() ) <<すべての列をマトリックスとして取得;
これにより、データ1という名前の以下の行列が生成されました。
[ 23 24 25 26,
22 23 . .,
23 22 . .]
この行列の列数を要求しました。
c = ncol (Data1);
これにより、以下のエラーメッセージが生成されました。
行番号 (0) が無効であるため、列 'C' に値を設定できません。アクセスまたは 'Assign' の評価において、:c = /*###*/N 列(データ1) /*###*/
エラーメッセージの意味を理解するため、またはData1の列数を取得する方法について、ご助言いただければ幸いです。
ありがとう。
Cはデータテーブルの列です。別の名前を選ぶのが一番簡単な解決策です。名前空間を使うこともできます。
メッセージ
行番号 (0) が無効であるため、列 'C' に値を設定できません。アクセスまたは 'Assign' の評価において、:c = /*###*/N 列(データ1) /*###*/
これは、Cが単純な変数ではなく列であり、JMPにはデータテーブルのどの行に新しい値を入れるべきかを判断する方法がないことを意味します。
これに関するいくつかのリンク
また、通常はスクリプトを Names Default To Here(1); で始めるべきなので、この「問題」が発生しないこともよくあります。これにより、c 変数はスクリプトの here 名前空間内になります。 スコープ > Names Default To Here