JMP> JSL>アドインに引数を渡す方法には、独自のスクリプトが含まれていますか?こんにちはJMPコミュニティ、
私はジョン・サルのFDR計算アドイン( com.sas.sall.fdrpvalue.jmpaddin)大規模なバイオマーカーデータの分析。
このアドインでのデータの手動入力は簡単ですが、JSLスクリプトからこのツールに引数を渡す方法がわかりません。
スクリプトでアドインを使用できるようにするには、インクルード( "[アドイン]")コマンドを使用する必要があることはわかっていますが、スクリプトによって生成された特定の列をアドインにポイントするにはどうすればよいですか?
ご協力ありがとうございました。
一番、
TS
スクリプティングRe:JMP> JSL>アドインに引数を渡す方法には、独自のスクリプトが含まれていますか?からアドインをインストールしましたここそしてコードを見ました。 私はおそらくそれを書き直して関数を使用しますが、アドインが作成する新しいウィンドウを次のようなもので使用できるはずです。
Names Default To Here(1);
//This will immediately launch New Window with reference fdrDlg
Include("$ADDIN_HOME(com.sas.sall.fdrpvalue)/falseDiscoveryPValue.jsl");
dt = Open("$SAMPLE_DATA/Big Class.jmp");
colListLabel << Set Items({"age", "sex"}); //Label Columns
colListPVal << Set Items({"height"}); //PValue Column
//ok button doesn't have direct reference, so we can look for it with XPath for example
ok_btn = (fdrDlg << XPath("//ButtonBox[@title='OK']"))[1];
//to launch we can press ok_btn
ok_btn << Click;Re:JMP> JSL>アドインに引数を渡す方法には、独自のスクリプトが含まれていますか?こんにちはJMPコミュニティ、
まず、ありがとう@jthi迅速かつ効率的なソリューションのために。
完全を期すために、FDR JSLスクリプトのコア要素から関数を作成する大まかな代替オプションを使用しました(以下を参照)。 次に、スクリプトでこの関数を呼び出しました。
重要:この関数で使用されるコアコードは、JohnSallによって作成されました。
NamesDefaultToHere(1);
fdr = Function ({dtf, pvalCol},
pvalues = pvalCol<<GET values="">1,dialog("PValues must be between 0 and 1");throw());
index = rankIndex(pvalues); // removes missing values
n = nrow(index);
ordPValue = pvalues[index];
adjPValue = J(n,1,.);
for(i=1,i<=n,i++,
j = n-i+1;
ratio = n/(n-i+1);
adjPValue[j] = if (i==1,ordPValue[j],min(ratio*ordPValue[j],adjPValue[j+1]));
);
rowPValues = J(NRow(dtf),1,.);
rowPValues[index] = adjPValue;
sfx = pvalCol << get name ();
n_col_name = "FDR " || sfx;
dtf<<NEWCOLUMN></NEWCOLUMN></GET>
一番 、
TS