サミット参加者により最優秀招待論文に選ばれました。
注 1: この講演の内容の多くは、 ジェフ・パーキンソンの 2 つのブログに基づいています (Jeff さん、ありがとうございます!)。これらのブログは、すぐ下のリンクからご覧いただけます。ぜひご覧ください。
-ブレイディ
https://community.jmp.com/t5/Jeff-Perkinson-s-Blog/10-Things-You-Don-t-Know-About-JMP/ba-p/21314
https://community.jmp.com/t5/Jeff-Perkinson-s-Blog/10-More-Things-You-Don-t-Know-About-JMP/ba-p/28959
注 2: 現在、画面録画のビデオをコミュニティにアップロードするのに苦労しています。 申し訳ありませんが、解決するまでお待ちください。
レベル: 初級
Brady Brady、SAS、JMP テクニカル イネーブルメント エンジニア
すでにご存知のとおり、JMP はデータ分析と探索のための驚くほど豊富な機能を備えたツールです。これは、JMP ではほとんどすべての操作を複数の方法で実行できることも意味します。ここで紹介する 10 個 (またはそれ以上!) のヒントとコツにより、効率が向上し、テクニック、キーボード ショートカット、数式などが紹介されます。ぜひ参加して、初心者からエキスパートへ、エキスパートから達人へとレベルアップしてください。
JMP ジャーナルには、次の 10 以上のヒントの例が含まれています。
ショートカットキー
ヘルプ > 書籍 > クイックリファレンス
JMP には、多くの一般的なタスクに対するキーボード ショートカットがあります。たとえば、JMP のカーソルの多くは、1 つのキーのショートカットで選択できます。
A: 矢印
?: 疑問符
S: 選択
R: スクロール
H: 手
B: ブラシ
L: 投げ縄
Z: 虫眼鏡
C: クロスヘア
T: 注釈
メイン メニューから [ヘルプ > ブック > クイック リファレンス] を選択すると、クイック リファレンス ガイドが開き、これらのキーボード ショートカットやその他の多くのキーボード ショートカットが一覧表示されます。
結合テーブルを作成する
レポート テーブルを右クリックすると、「データ テーブルにする」を選択して出力をデータ テーブルに配置できます。
レポート内に同じタイプの複数のテーブルが存在する場合 (たとえば、「by」グループを使用して分析が生成されている場合)、「結合データ テーブルの作成」を選択できます。これにより、クリックしたテーブルとそれに類似するすべてのテーブルが 1 つのデータ テーブルに簡単にまとめられます。
ウィンドウを組み合わせる
メイン メニューから「ウィンドウ > ウィンドウの結合」を選択すると、JMP で開いている複数のウィンドウを結合してダッシュボードをすばやく作成できます。
列をレポートウィンドウにドラッグする
データ テーブルの列ペイン (データ テーブルの中央左) から列をクリックして、開いているレポートのグラフにドラッグします。赤いゾーンの 1 つにドロップすると、グラフで現在使用されている列がドラッグした列に置き換えられます。
インターネットオープン
メイン メニューから [ファイル > インターネットで開く] を選択し、ダイアログに Web ページのリンクを貼り付けて、JMP で Web ページ上のインポート可能なテーブルを検索します。
JMP が検出したテーブルを一覧表示した後、インポートするテーブルを選択すると、JMP はデータを自動的にテーブルに配置します。テーブル スクリプトが保存されるので、JSL スクリプトを使用してこれを繰り返すことができます。また、テーブルに画像が含まれている場合は、必要に応じてテーブルに画像を読み込むためのテーブル スクリプトが提供されます。
列名のコピー/貼り付け
データ テーブルの左中央にある列ペインから、任意の数の列名を簡単にコピー/貼り付けできます。目的の列を選択し、コピー/貼り付けのキーボード ショートカット (Windows では CTRL-C/CTRL-V、Mac では CMD-C/CMD-V) を使用して名前をコピーまたは貼り付けます。これにより、一度に多数の列名のクリーンアップを簡単に実行できます。
属性を標準化する
属性を標準化すると、複数の列の列プロパティを同時に設定できます。
プロパティを変更する列を選択し、選択した列のいずれかの上部を右クリックして、「属性の標準化」を選択します。
単語() + 単語()
これら 2 つの関数は、選択した区切り文字に基づいて文字列を単語に分割します。
Word(k, string, delimiterString) は、delimiterString に含まれる区切り文字に基づいて、文字列内の k 番目の単語を返します。たとえば、Word( 2, “Mg#55%A%17”, “#” ) は文字列 “55%A%17” を返し、Word( 2, “Mg#55%A%17”, “#%”) は文字列 “55” を返します。
Words(文字列、区切り文字) は文字列内のすべての単語のリストを返します。つまり、Words(“Mg#55%A%17”, “#%”) はリスト { “Mg”, “55”, “A”, “17” } を返します。
どちらの関数も、文字列を個々の文字に分割するために空の文字列「」を使用します。したがって、Word (5, "abcdefg") は文字列「e」を返します。delimiterString を省略すると、スペース文字列「」が区切り文字として使用されます。
一致するセルを選択/選択範囲を反転してコピー/貼り付け
データ テーブルで行を選択すると、コピー + 貼り付け操作は強調表示されたセルにのみ適用されます。これにより、CRTL-C を使用してテキストをバッファーに配置したり、何らかの基準を使用してテーブル内の行を選択したり (たとえば、[行 > 行選択] サブメニューを使用するか、グラフ内のポイントを選択)、テーブル内で強調表示されたセルにのみテキストを貼り付けたりすることが簡単になります。
この手法は、データをクリーンアップする場合や、グラフでの選択に基づいて行を分類する場合に特に役立ちます。
複数回答: 順列を組み合わせに変更する
複数の回答データを扱う場合、回答の順序が重要な場合もあれば、回答のセットだけが重要で、順序は重要でない場合もあります。文字列操作では、「cat, dog」は「dog, cat」とは異なるものとみなされます。たとえば、Summary プラットフォームはこのように動作します。次の方法を使用すると、特定のセット内のすべての要素がアルファベット順に表示されるようにすることができます (つまり、「cat, dog」のみが可能です)。
メイン メニューから、「Cols > Utilities > Make Indicator Columns」を選択して、複数の回答データで見つかった各要素のインジケータ列を作成します。おわかりのように、インジケータ列はアルファベット順に表示されます。
次に、すべてのインジケーター列を選択し、メイン メニューから「列 > ユーティリティ > 列の結合」を選択し、「選択した列はインジケーター列です」チェックボックスがオンになっていることを確認します。生成される列は、最初に選択した列と似ていますが、すべての要素がアルファベット順になっているため、各回答セットが一意に表現されます。
値の順序付け
JMP ではカテゴリ軸はアルファベット順に並べられますが、「値の順序」列プロパティを使用して任意の順序に並べることができます。
列の上部を右クリックし、「列のプロパティ > 値の順序」を選択します。ダイアログを使用して、値を好きなように並べ替えます。変更を適用すると、すべてのグラフとレポートで指定した順序で値が表示されます。
軸列プロパティ
この列プロパティを使用すると、列の軸設定を指定できるため、変数がグラフで使用されるたびにこの変数の軸を再編集する必要がありません。アクセスするには、列の上部を右クリックし、「列プロパティ > 軸」を選択します。
ダイアログ内でのコピー/貼り付けの使用
JMP のダイアログの多くは、コピー/貼り付け操作をサポートしています。講演で使用した例では、表から 51 行 2 列のデータ ブロックをコピーし、値ラベル ダイアログに貼り付けました。これにより、データ入力プロセスが大幅に簡素化され、エラーの可能性が減りました。
要約ヒストグラム
サマリー プラットフォームは、サマリー統計を計算するだけでなく、ヒストグラムをサマリー テーブルに書き込むこともできます。ヒストグラム オプションは、サマリー プラットフォームの起動ダイアログの [統計] ドロップダウン メニューの下部にあります。
概要から自動参加
要約を実行し、結果をソース テーブルにドラッグして戻すことができます。これは、要約テーブルに新しく作成された列にも適用されます。
例: 重量の場合は P.8 - P.2
リンクされたサマリー テーブル内の任意の列 (サマリー テーブルの作成後に作成した列も含む) は、結合を必要とせずにドラッグ アンド ドロップでソース テーブルに結合できます。
これを行うには、ドラッグする列ヘッダーをクリックして押したまま、ソース テーブルにドラッグして列ヘッダーにドロップします。ドロップした位置に列がテーブルに挿入されます。
スクリプト内の「By」グループを簡単にサポートします。
サマリーテーブルを使用してメインテーブルの選択を循環させ、JSL の面倒な where 句を不要にします。
ネイティブでサポートされていない分析で「By」グループをサポートするには、複合「Select Where」句の代わりにサマリー テーブルを使用できます。
「By」グループがわかったら、必要に応じて非表示にしたサマリー テーブルを作成し、一度に 1 行ずつ選択してテーブル内を移動します。これを行うと、ソース テーブル内の対応する行がすべて選択されるため、サブセットを取得して、サブセット テーブルのデータのみに対して分析を実行できます。
完了したら、サブセット テーブルを閉じ、概要テーブルの残りの行ごとにこのプロセスを繰り返します。
クイッククエリとサブセット用のグループ内の番号
単純な式「Col Cumulative Sum ( 1, < 「> )」は、指定されたグループ内の各行のインスタンス数を、表に表示されている順序でカウントします。表が並べ替えられるたびに、数値が更新されてこれを反映します。このように、新しい列は動的なランキング ツールとして機能し、通常は時間のかかるクエリの作成や、提示された質問ごとに追加のランキング列が必要になるような質問に答えることができます。
講演の例では、「国」と「タイプ」をグループ化列として使用しました。これにより、「国とタイプの各組み合わせで、最も重量の軽い 3 台の車はどれですか?」などの質問に簡単に答えることができました。答えるには、「重量」を降順で並べ替え、累積合計列で 1、2、3 を選択し、「一致するセルの選択」を呼び出して、選択した行からサブセット テーブルを作成しました。
タイムスタンプ付きデータに対して同様のアプローチを使用すると、たとえば、各ツールの最新の観測値や、各人口統計内で受信した最初の 5 つの調査回答を含むサブセットを簡単に作成できます。
パレートフロンティア
行 > 主要行を選択
(Wikipedia): パレート効率性またはパレート最適性とは、少なくとも 1 つの個人または選好基準を悪化させることなく、いずれかの個人または選好基準を改善するように再配分することが不可能なリソースの配分状態であり、パレート境界はすべてのパレート効率的な配分の集合です。
JMP では、メイン メニューから「行 > 行の選択 > 優位の選択」を選択して、パレート フロンティアを選択できます。講演の例では、75 本のキャンディー バーのうち 6 本が選択されました。6 本のバーはそれぞれ、最適なバーよりもカロリーが低く、かつ不飽和脂肪が少なくとも同じ量含まれている他のバーを選択することは不可能であるという意味で最適でした。
列で選択された名前
メイン メニューから「行 > 行の選択 > 列での選択名」を選択すると、2 つの値を持つ列が作成されます。この列では、現在選択されているすべての行に 1 つの値が割り当てられ、選択されていない行に別の値が割り当てられます。これにより、この新しい列と「一致するセルの選択」機能を使用して、後日まったく同じポイント セットを簡単に再選択できます。
行の状態列
「行状態」データ型を割り当てた列には、後で取得できるようにテーブルの行状態を保存できます。行の選択、除外、非表示、マーカー、色などは、行状態列に保存できるプロパティの例です。行状態列は必要な数だけ使用できるため、ニーズに応じてさまざまな行状態構成を簡単に切り替えることができます。
行状態列は、赤い「星」アイコンで簡単に識別できます。
「選択された」数式列
選択済み(行の状態())
「列内の名前選択」を動的にできたらどうでしょうか? できます! 簡単な数式「Selected ( Row State ( ) )」を使用して、選択されたすべての行に 1 が含まれ、選択されていないすべての行に 0 が含まれる数式列を作成します。この新しい列を使用すると、選択された行と選択されていない行の比較を簡単に実行できます。
この列に名目モデリング タイプを割り当てると、1 つのグラフで行を選択し、別のグラフでヒストグラム、ボックス プロット、分析プラットフォームなどを使用して、選択されていない行と比較することができます。
この列に連続モデリング タイプを割り当てると、選択列の平均を計算することで、選択された行の割合を確認できます。これを「By」グループで実行すると、グループ間の興味深い違いを簡単に明らかにすることができます。
グラフビルダーの「テーブルに保存」と画像ラベルを使用してドリルダウンを提供する
グラフ ビルダーの赤い三角形のメニューから、「データ テーブルにする」を選択して、グラフ画像をテーブルに保存します。その後、これらの画像を元のデータ テーブルに結合し、マーカーとして使用して、必要に応じて閲覧者に詳細情報を提供できます。
カスタム望ましさ関数による最適化
JMP のプロファイラーは、望ましさ関数を通じて設定した基準に従って出力を最適化する因子設定を見つけるのに役立ちます。
デフォルトでは、これらの関数は、デフォルトの望ましさ曲線を適切な形状にドラッグすることによって指定されます。ただし、次の手順に従って、カスタム望ましさ関数に関して最適化することもできます。
最適化したい応答の予測式に応じて、カスタム望ましさ関数を数式列として追加します。
メインメニューから「グラフ > プロファイラー」を選択し、予測列とカスタム望ましさ列を「Y」ロールにキャストして、「OK」をクリックします。
予測プロファイラーの赤い三角形のメニューから、「最適化と望ましさ > 望ましさ関数」を選択して、望ましさ関数をオンにします。「最適化と望ましさ > 望ましさの設定」を選択し、すべての予測列の重要度値を 0 に設定し、カスタム望ましさ関数の重要度を 1 に設定します。
最後に、「最適化と望ましさ > 望ましさの最大化」を選択して、カスタム望ましさ関数に従って入力を最適化します。
画像をフレームボックスにドラッグ
JMP グラフはさまざまな組み込み背景をサポートしていますが、画像ファイルをグラフにドラッグすることもできます。この機能は (必要な JSL とともに) JMP では利用できないデータを取得するために使用できます。
講演では、スクリプト化された例が 2 つ使用されました。最初の例では、関数の画像を使用して (x,y) ポイントをデータ テーブルに配置し、その後モデルを適合させて予測式を保存しました。これにより、関数から希望どおりにデータを生成できるようになりました。
2 番目の例では、分布の密度をスケッチし、最初に分布の数学的表現を導出することなく分布からサンプリングできるようにしました。