積み重ねと連結

このデモでは、「テーブル」メニューの「スタック」コマンドと「連結」コマンドをさらに2つ紹介します。ジャーナルのセクションで、「硬化時間データ」をもう一度クリックします。このテーブルは、各硬化時間サンプルごとに独立した列を持つように構成されています。例えば、5つの異なる硬化時間の平均を比較したい場合、JMPでは、データ構造として、硬化時間を示す列と実際の数値を示す列が1つずつ必要になります。このようにテーブルを並べ替えるには、「スタック」コマンドを使用します。「スタック」コマンドは、いわゆる横長のテーブル(このテーブルはそれほど幅は広くありませんが)を縦長のテーブルに変換します。この操作を対話的に実行し、JMPが作成したソーススクリプトからスクリプトを取得します。「テーブル」メニューから「スタック」を選択します。「硬化時間」から「硬化時間」までを選択し、「列のスタック」をクリックします。ほとんどのオプションはデフォルトのままにしておきます。出力テーブル名を追加します。「Stacked Cure Time Data」と名付けます。そして、新しい列名を指定します。積み上げデータ列は実際の硬化時間の値になりますので、「Cure Time」と入力します。ソースラベル列は、以前は列ヘッダーだったものを格納する列です。「Sample」と名付けます。「OK」をクリックします。これで、6列6行のテーブルではなく、3列3行のテーブルになります。JMPはデフォルトで、積み上げに関係のないこの列を保持します。これはダイアログのオプションで、保持したくない場合はチェックを外すことができます。さて、分散分析を実行して各データの平均を比較したい場合、OnewayプラットフォームのX分析ロールに含まれるサンプル列があります。このソーススクリプトを取得したいので、右クリックして「編集」を選択します。そして、内容を選択します。キーボードショートカットのCtrl+Aも使えます。右クリックでも可能です。これは小さなスクリプトなので、手動でハイライト表示しました。これをコピーします。これもキーボードショートカットを使うか、右クリックでも可能です。そして、ウィンドウをキャンセルします。これは、後ほど開く「Historical Cure Time Data」というテーブルが既に積み上げ形式でフォーマットされているためです。この2つのテーブルを1つのテーブルにまとめるには、両方とも縦長形式にするか、横長形式にする必要があります。そこで、積み上げ式硬化時間データのスクリプトを作成しました。これを保存せずに閉じ、新しいスクリプトエディタウィンドウを開きます。これもキーボードショートカットのCtrl+Tです。Ctrl+Vで貼り付けます。このスクリプトの冒頭で、この新しい積み上げ式データテーブルへのオブジェクト参照を設定します。そして、それを変数に格納します。これをdtStackedという名前にします。そして、先ほど貼り付けたスクリプトの結果を代入します。そして、セミコロンを追加します。では、ジャーナルでそのスクリプトをクリックして、過去の硬化時間データを開いてみましょう。繰り返しますが、これは縦長のフォーマットになっています。これらのデータをまとめる際に横長のフォーマットを維持したい場合は、「テーブル」メニューの「分割」というコマンドがあります。これはスタックの逆の動作をします。しかし、新しい硬化時間データのスクリプトは既にスタック済み、または取得済みなので、こちらをスタックします。そして、新しいデータを過去の硬化時間データに連結します。テーブルとの連結は、単に垂直方向に追加するだけです。両方のウィンドウが開いているので、スクリプトに戻って新しい行に進みます。この新しいデータテーブルはこれ以上操作しませんが、dtUpdatedという変数に参照を格納します。そして、過去の硬化時間データが連結メッセージを受信した結果に署名します。そこで、「データテーブル」と入力し、二重引用符で「Historical Cure Time」と入力します。2つのデータテーブルを開いている場合、この構文が現在のデータテーブルよりも優れている理由がお分かりいただけると思います。送信演算子「concatenate」を入力します。これも「テーブル」メニューから取得します。括弧内に、スタックされた後の新しい硬化時間データを格納する変数名を指定します。dtStacked が連結の引数です。連結には他にも多くの引数を指定できます。「テーブル」メニューで「concatenate」を選択すると、ダイアログでオプションを確認できます。実際には、対話形式でこれらのオプションをいくつか使用して、ソーススクリプトを取得することもできます。しかし、ここではシンプルに、履歴硬化時間に追加するテーブルのみを指定します。このスクリプトは、これまで使用してきた新しい硬化時間データテーブルをスタックし、それを既に縦長のフォーマットになっている履歴硬化時間に追加します。スクリプト全体を実行すると、中間ステップとして積み重ねられた硬化時間データが得られます。実際には、新しい無題のデータテーブルにデータが収集されたら、スクリプトはこのデータテーブルを閉じることになるでしょう。また、連結については、より完全なスクリプトで出力テーブル名を指定することもできます。ここでは、テーブルメニューからさらにいくつかの例を確認しました。また、このソーススクリプトを取得して変更したり、適応させたり、作業中の他のスクリプトに挿入したりできることも確認しました。