列名のループが機能しない<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />こんにちは、
私はJSLの初心者です。私はWilcoxonテストをさまざまな列に対して実行しようとしています。最初の列は "ID"、2番目の列は "SEX"です。これらはパラメータとして使用しました。
そこで、分析を行い結果をジャーナルにエクスポートするために次のコードを書きました。
dt =現在のデータテーブル()。
column_names = dt <<列名を取得します。
(i = 3、i <= length(column_names)、i ++の場合)
ow = ow || 「
一方通行(
Y(:名前( "|| column_names || ")、
X(:SEX)
ウィルコクソン検定(1)
ボックスプロット(0)
ミーンダイヤモンド(0)
; 「
;
eval(parse(ow))<< Journal();
しかしそれはうまくいきませんし、コードの何が問題なのかわかりません。
私はまた別の質問があります:「それはジャーナルにP値だけをエクスポートすることは可能ですか?)しかし、結果にはまだセクションのタイトルがあります。必要なのは私の列名とP値だけです。出来ますか ?"
私を助けてください。
前もって感謝します
再:列名のループが機能しないDave様、
迅速で詳細な回答をありがとう。
私はJMP8を使用していますが、構造が少し違うようです。私のバージョンでは "NumberColBox(7)"はp値を指します。
木構造を見る方法についてのあなたの助言にも感謝します。とても助かります。
がんばろう
再:列名のループが機能しない2番目のスクリプトの出力は次のようになります。

どのバージョンのJMPを使用していますか?私はそれをv9とv10でうまく動かしました。
また、ログファイルを調べて、エラーメッセージが表示されるかどうかを確認してください。
p値は、次のコード行を使用してレポートのツリー構造内の適切な表示ボックスを参照することによって抽出されます。
matPValue = owr [NumberColBox(11)] ;
表示ボックスの名前 - NumberColBox(11) - は、ツリー構造を見ることによって識別されます。そのため、これを試して、表示ボックスの名前が正しいことを確認できます。
行の後:
owr = ow << report;
追加:
owr <<ツリー構造を表示。
これは次のような出力になります。

- デイブ
再:列名のループが機能しないDave様、
どうもありがとうございました。それは本当に私の時間を節約しました。
しかし、2番目のスクリプトを試したときに答えが見つからなかったため、結果テーブルのプロパティを "visible"に変更したところ、分析する必要のある列数に対応する正しい行数が作成されました。結果テーブル
あなたが私にそれを解決する方法のヒントを与えるならば、私は感謝します。
あなたの貴重な助けを事前に感謝します。
再:列名のループが機能しないこれを試して:
dt = Open( "$ SAMPLE_DATA / Big Class.jmp");
column_names = dt <<列名を取得します(数値、文字列)。
jw =新しいウィンドウ( "demo"、<< journal);
(i = 1、i <= NItems(column_names)、i ++、
colName = column_names ;
cmd = Expr(
ow = Oneway(
Y(cName)、
X(:SEX)
ウィルコクソン検定(1)
ボックスプロット(0)
平均ダイヤモンド(0)。
;
owr = ow << report;
owr <<概要ボックス(1)<<閉じる。
pValues = owr [TableBox(3)];
jw << Append(ob =アウトラインボックス(colName));
ob << Append(pValues);
ob << Append(owr);
ow <<ウィンドウを閉じる。
;
(cmd、Expr(cName)、colName)に代入します。
評価(cmd);
;
列名とp値だけが必要な場合
dt = Open( "$ SAMPLE_DATA / Big Class.jmp");
column_names = dt <<列名を取得します(数値、文字列)。
結果=新しいテーブル( "結果"、非表示、
新しい列( "名前"、文字)、
新しい列( "P値"、数値)、
行を追加する(NItem(column_names))
;
(i = 1、i <= NItems(column_names)、i ++、
colName = column_names ;
cmd = Expr(
ow = dt << Oneway(
Y(cName)、
X(:SEX)
ウィルコクソン検定(1)
ボックスプロット(0)
平均ダイヤモンド(0)。
;
owr = ow << report;
matPValue = owr [NumberColBox(11)];
pValue = matPValue [1];
コラム(結果、1) = colName;
コラム(結果、2) = pValue;
ow <<ウィンドウを閉じる。
;
(cmd、Expr(cName)、colName)に代入します。
評価(cmd);
;
結果<<ジャーナル;
閉じる(結果)
- デイブ