ワークシート列のアンスタック


この機能は、グループデータを複数列にアンスタックするのに使用します。アンスタックの際に欠損値を1つのグループとしてまとめることができます。また、出力にグループ外の列を追加する事も可能です。

この機能を使うには

  1. データの入った新しいワークシートを作成します。
  2. メニューからデータ整形:列アンスタッキングを選び、wunstackcolダイアログボックスを開きます。

実際には、Xファンクションwunstackcolが呼び出されて操作を行います。

UnstackColumnsDialog.png

目次

ダイアログの設定

再計算

結果を再計算する方法を指定します。詳細は分析結果の再計算を確認してください。

アンスタックされるデータ

アンスタックされるデータを指定します。

グループ列

グループ情報を含む複数のグループ列を、グループ列ボックスに入力します。このグループに従って列のアンスタックが実行されます。ツールバーGroup List Toolbar.pngの、上へ移動Button Group List Move Up.png下へ移動Button Group List Move Down.png削除Button Group List Remove.pngすべて選択Button Group List Select All.png選択Button Group List Add.pngボタンでグループ列の追加や削除、順序変更が可能です。
列の大部分がテキストの場合、グループ列はプロット後にカテゴリーとして設定されます。そのため、出力列の順序を簡単に変更できます。

オプション

他の列を含める

元のシートのアンスタックしない列を結果シートに含めるかどうかを指定します。

他の列

結果シートに出力するアンスタックしない列のデータ範囲を指定します。これは、他の列を含めるにチェックが付いている場合のみ利用できます。

他の列の値の抽出ルール

他の列のデータの配置方法を指定します。これは、他の列を含めるにチェックが付いている場合のみ利用できます。
  • 最長グループ一致
    このオプションは、グループ化変数 (グループ列) の各値の個数が等しく、グループ化されていない変数 (他の列) の各値の個数が等しい場合に使用します。例えば、G1 と G2 の 2 つの列にアンスタックされる6つの個体があるとします。非グループ化変数には、g1、g2、g3 の 3 つの値があります。 このオプションを使用するには、G1とG2にそれぞれ3つの個体があり、グループ化されていない変数のg1に2つの個体、g2に2つ、g3に2 つの個体が必要です。このオプションを選択する前に、ネストソートを実行する必要があることに注意してください (最初にグループ列で並べ替え、次に他の列で並べ替えます)。
  • 全てのグループを統合する
    このオプションは、グループ列のデータと他の列のデータを組み合わせて、アンスタックデータのインデックスとして使用します。グループ列のデータと他の列のデータを組み合わせに重複がある場合、順序はソースワークシートでの表示に従います。

欠損データを単一グループとして含める

欠損値を一つのグループとするか指定します。
出力設定

出力列のソート

出力列をどのようにソートするか指定します。
  • グループ変数
    出力列をグループ変数値で英数字順に並べ替えます。例えば、グループ変数"Make"が2つの値"Acura" と "Buick"を持つとします。アンスタッキング後、列では"Acura"、"Buick"の順で出力されます。
  • アンスタックされるデータ
    アンスタックされるデータの順序を保存します。例えば、アンスタックされるデータ[Book1]Sheet1!(3,4)の場合を考えます。アンスタックすると、列3データが最初にリストされ、次に列4データがリストされます。アンスタックされるデータ[Book1]Sheet1!(4,3)の場合は、列4データが最初にリストされ、次に列3データがリストされます。

出力ワークシート

アンスタックした結果を出力する場所を指定します。

グループ情報の出力先

グループ情報の出力先を指定します。
  • ロングネーム
    グループ情報をロングネーム行に出力します。
  • コメント
    グループ情報をコメント行に出力します。
  • データ列のロングネームに追加する
    グループ情報をロングネーム行に追加します。
  • ユーザ定義パラメータ
    グループ情報をユーザ定義パラメータ行に出力します。行の名前はグループ情報名の引用元で指定します。
  • カスタム
    すべてのグループ化列にラベルの省略形を入力します。ラベルの数は、グループ列の数と同じにする必要があります。各グループ列の情報は、1つのラベル行に格納されます。たとえば、入力に2つのグループ列がある場合、オプションにLCを入力します。group1の情報がロングネームとして、group2の情報がコメントとして設定されます

グループ情報名の引用元

グループ情報の出力先ユーザ定義パラメータに設定したときに利用できるドロップダウンリストです。グループ情報を格納するユーザ定義パラメータ行の名前付けに使用されます。ソースワークシートのグループ列のラベル行から名前を付けます。選択したラベル行には、ユーザ定義パラメータ行の名前用の文字列が必要で、ない場合はエラーメッセージが表示されます。GUIでは、ソースワークシートにそのラベル行が表示されているかに応じて利用可能なオプションが表示されます。
  • ショートネーム
    グループ列のショートネームから
  • ロングネーム
    グループ列のロングネーム行から
  • 単位
    グループ列の単位行から
  • コメント
    グループ列のコメント行から

列をアンスタッキングするには

列スタッキングと反対の操作をする機能です。列のアンスタッキングでは、他のアンスタックしていない列をアンスタックした列の結果に追加できます。

サンプル

サンプル1: 基本のアンスタッキング

グループ化データ(<Originインストールフォルダ>\Samples\Statistics\body.dat)を複数列にアンスタッキングするサンプルです。

  1. <Originインストールフォルダ>\Samples\Statistics\body.datのファイルを新しいワークブックにインポートします。
    Wunstackcol example 1.png
  2. 列DとEを選択し、ワークシート:列アンスタッキングを選択(またはコマンドウィンドウで wunstackcol -d; を実行) し、wunstackcol ダイアログを開きます。
  3. グループ列の項目にある三角形のボタンをクリックし、C(Y): genderを選択します。
  4. オプションで、他の列を含めるにチェックを付けます。他の列では、デフォルトの範囲を使用します。
  5. 他の列の値の抽出ルールドロップダウンリストで全てのグループを統合するを選択します。
  6. 出力設定のグループ情報の出力先ユーザ定義パラメータを選択して、グループ情報名の引用元ロングネームを選択します。他の設定はデフォルトのままです。
    Wunstackcol example 2.png
  7. OK ボタンをクリックし、列をアンスタックします。結果は下図のようになります。
    Wunstackcol example 3.png

例2: 日付や時間でアンスタッキング

この例では、複雑な日付時刻文字列の一部をキーにしてデータをグループ化します。

  1. 新しいワークブックを開き、データ: ファイルからインポート:単一ASCIIファイルを選択して、<Origin Program Directory>\Samples\Import and Export\Custom Date and Time.datをインポートします。
  2. 列Aヘッダをクリックして列を選択し、右クリックして列フォーマットを選択します。
  3. プロパティタブで、フォーマット日付に設定し、表示カスタム表示に設定して、カスタム表示コンボボックスに次のように入力してOKをクリックします。
    dd.MM.yyyy HH:mm:ss.##
    
    これにより、Origin が「文字列」として認識していたものを日付時刻文字列に変換し、 内部的に数値として扱えるようになります(数値演算などに利用可能)。
  4. データシートをスクロールして確認すると、文字列の時刻部分(HH:mm:ss.##)から、 測定値が09時から短い間隔で記録されていることがわかります。ここで仮に、B(Y)列のデータを「時」と「分」でグループ分けしたいとします。 再度 A(X) 列を選択し、右クリックして 列フォーマット を選び、プロパティタブでフォーマット時間に設定し、表示のドロップダウンリストからHH:mmを選択します。
    これで、ワークシートは次のようになります。
  5. Wunstackcol example 4.png

  6. ワークシート内の両列を選択し、データ整形:列アンスタッキング: ダイアログを開くを選びます。
  7. グループ列をA(X)に設定します。デフォルト設定のまま、OKボタンをクリックします。データは HH:mm 単位でグループ化され、新しいワークシートのコメントラベル行にグループ情報が保存されます。
  8. Wunstackcol example 5.png

例3:スタックされていない列の並べ替え

この例では、<Originプログラムディレクトリ>\Samples\Statistics\automobile.datPower列を make別にアンスタックし、出力を並べ替えます。

  1. <Originプログラムディレクトリ>\Samples\Statistics\automobile.datファイルを新しいワークブックにインポートします。
  2. 列Cを選択し、データ整形:列アンスタッキングを選択し、wunstackcol ダイアログを開きます。
  3. グループ列の項目にある三角形のボタンをクリックし、B(Y): Makeを選択します。
  4. 再計算自動に変更し、デフォルト設定のまま実行します。
    Wunstackcol example 6.png
  5. OK ボタンをクリックし、列をアンスタックします。ここで、列 (B) はカテゴリカル(カテゴリデータ)として設定されていることに注意してください。
  6. UnstackCols1シート内の全データを選択し、メニューから作図>複数区分、複数軸: ラベルから複数パネルを一括作成...を選択します。
  7. グループ識別子コメントに設定します。OK をクリックして複数パネルグラフを作成します。ここで、パネルの順序は UnstackCol1 シートの列順序に従います。
  8. パネルの順序を調整したい場合(たとえばメーカー名をアルファベット順に並べたい場合)は、元のワークシートでカテゴリカル順序を調整するのが最適です。automobile シートに戻ります。列Bのカテゴリー行のヘッダセルをダブルクリックします。
  9. カテゴリーダイアログで、カテゴリの編集(追加、削除、任意の順)にチェックを付けます。テーブルのカテゴリヘッダをクリックして、アルファベット順にソートします。OKをクリックすると、
    UnstackCols1シートの列順序とグラフ内のパネル順序が更新されます。