<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />私がJMPの初心者によく言及することの1つは、「Power of JMP」がデータテーブルにあることです。そして、一般的には「確かにドンですが、下のテーブルは気にしません。ディープ、ディープニューラルネットワークについて知りたいです!」 -すべての時間に私の若いパダワン。 私の主張を裏付けるために必要なのは、JMP開発者がテーブルメニュー項目-ファイルの直後、DOEの前。 彼ら自身がテーブルに与える重要性のレベルは明らかです-すぐそこに呼吸があります!現在、テーブルメニューの下には12のオプションがあり、John Sall忍者レベルを達成するには、それらすべてを理解する必要があります。 幸いなことに、JMPにはそれを支援する優れたトレーニング資料が用意されています。瞑想中は勉強に回します。 この投稿では、簡単なスクリプトを示して、概要の低いテーブルを取得します。
個人的に、私はいつも要約表を使用しています。 私はそれらを使用して列の値をチェックし、それらを使用してテーブルリンケージプロパティを介してメインテーブルの行を選択し、それらを管理へのレポートに使用します。「概要テーブルを使用しない場合...」となるでしょう。もちろん、答えは、忍者レベル(およびデータ)が示すように、データにわずかな微妙な転置、スタック、結合、または連結が必要な場合です。
[テーブル]メニューの最初のメニュー項目が[サマリー]であるときに、サマリーテーブルを作成するスクリプトが必要なのはなぜですか。

まず、John Sall忍者レベルを達成するには、JMPを心でコントロールします。ただし、そのレベルのスキルを達成する前に、私たちは歩かなければなりません。 また、実行する前に歩く必要があります。スクリプティングは、歩くよりも少し速いペースでスキップする方法です。これは、フォース(JMP)スキルが発達するまでのトレードオフです。 2つ目は、サマリーテーブルと集計が正規の始まりであることを理解することです。分割適用結合ハドリー・ウィッカムによって概説された方法-(これは山からジョン・サル忍者レベルまでの旅のはるか上にあります)。 最後に、この方法を適用することで、大量の要約ボタンマウスクリックを節約し、このブログ投稿を書くのに十分な時間を稼いだためです。
さらに煩わしさを感じることなく、ここに指定された要約テーブルJSLスクリプトを示します。 すべての優れたスクリプトがそうであるように、それは便利で忍者にやさしい関数形式で与えられることに注意してください。 これはあなたがそれをあなたの意志に曲げるのが非常に簡単になり、すべての忍者テーブルの秘密を放棄するようにそれを修正することになります。
//スクリプトを開始
//定義
名前のデフォルトはHere(1);です。//常にこれでスクリプトを開始します!
//関数は、現在のデータテーブルからカウントの要約テーブルを作成します
//テーブルで列を選択する必要があります
sumdt = Function({dt}、{Default Local}、
selcollst = dt << Get Selected Columns(string);
//選択列を取得
If(NItems(selcollst)> 0、//テーブルで列が選択されていることを確認します
summaryexpr = Expr( "dt << Summary(Group(sublst))"); //サマリーテーブルの基本式
liststr = ""; //空の文字列プレースホルダー
// Exprを構築する
for(idx = 1、idx <= NItems(selcollst)、idx ++、
If(idx == 1、
liststr = "Column(\!" "|| selcollst [idx] ||" \!")"; //最初の列
、
liststr = liststr || "、Column(\!" "|| selcollst [idx] ||" \!")"; //追加の列がある場合
);
);
SubstituteInto(summaryexpr、"sublst"、liststr); //置換を実行します
sumdt = Eval(Parse(summaryexpr)); //ここで魔法が起こります
return(sumdt); //常にハンドルを返すのはいいことです-多分あなたは別のスクリプトでそれを使うでしょうか?
、//その後、データテーブルでは何も選択されていません。何も選択されていない場合は、ユーザーにプロンプトを表示すると便利です
キャプション(
{200、200}、
"集約する列を選択してください"、
Font( "Arial Black")、
フォントサイズ(16)、
TextColor( "red")、
BackColor( "黒")、
話し言葉(0)
);
Wait(4);
キャプション(削除);
);
);
//メイン
dt =現在のデータtable();
sdt = sumdt(dt);
//スクリプトの終わり-このブログのフォーマットはJSLには適していません...
これはすばらしいことであり、自分で簡単に確認できますが、これをワークフローに組み込んでいないと、どういうわけかその忍者レベルに到達しようとしているのではないように感じます。 また、ワークフローについてのちょっとした議論も適切でしょう。 この簡単なスクリプトをキーボードのホットキーの組み合わせにリンクしていて、ワークフローは次のように構成されています。データテーブルを開いている間に、列パネル<下>から列を選択し、ホットキーコンボを使用して集計(選択した列のサマリーテーブル)。 これですべてです。 忍者のスキルは一見単純そうです。
列ビューアー(ビッグクラス)-目的の集計列を選択します

テーブルサマリースクリプトのホットキーコンボを押して、(年齢、性別)ごとの集計を取得します。

待って、あなたが言うホットキー... では、スクリプトをホットキーにリンクするにはどうすればよいでしょうか。良い質問です-これについてはもっと良い忍者(JMP)リファレンスがあると確信していますが、簡単に…
1。 スクリプトをクリップボードにコピーします
2。 [表示]-> [カスタマイズ]->(選択)メニューおよびツールバー

3。ツールバーセクションで右クリックして、新しいツールバー

4。ツールバーに名前を付けます-もちろん忍者が適切でしょう

5。忍者を展開し、無題のスクリプトを選択します

6。右側のペインでスクリプトに名前を付け、「このJSLを実行」セクションにJSL関数を貼り付けます

7。組み込みの優れたJMPアイコンを選択します。JMPに感謝します。要約表のアイコンを借ります。

8。必ずショートカットを割り当ててください!あなたはそのために追加の忍者レベルを手に入れます!

OKを押してレベルアップ!
このカスタマイズ画面が表示される場合があります-OKをクリックするだけです

あなたがそれらの視覚的な人々の1人であり、新しいボタンを見たい場合は、表示->ツールバー新しい忍者ツールバーがチェックされていることを確認します



新しいニーナテーブルスキルをお楽しみください!
ベスト、
ドン