SAS Enterprise Guide バージョン 2.0 / タスクについてのFAQ


T1:タスクの結果において、変数ラベルを列の見出しとして使用することはできますか。

変数ラベルを使用するためには、以下の操作を行ないます。

  1. 各タスクの「変数」タブで、変数の名前を右クリックして「プロパティ」を選択します。
  2. プロパティウィンドウの「ラベル」フィールドにラベルを記述します。
  3. タスクを実行します。

 

T2:タスクの結果において、出力形式を適応することはできますか。

出力形式を適応するためには、以下の操作を行います。

  1. 各タスクの「変数」タブで、変数の名前を右クリックして「プロパティ」を選択します。
  2. プロパティウィンドウの「出力形式」フィールドの横のボタンをクリックし、出力形式を選択します

※選択ボタンが選択できないようになっている場合は、データグリッドにおいていったんデータのプロテクトを解除し、変数のプロパティを変更します。または、クエリビルダを使用して、変数のプロパティを変更します。

 

T3:タスクをコピーすることはできますか。

通常のWindowsの操作と同じ要領で、タスクをコピーできます。既存のタスクを、パラメータだけ変更して複数回実行したい場合には特に有効です。
タスクをコピーするには、以下の操作を行ないます。

  1. コピーしたいタスクを右クリックし、「コピー」を選択します。
  2. 同じ要領で、プロジェクトウィンドウ内で「貼り付け」を選択します。

 

T4:一度作成したタスクを他のデータセットに対しても実行したいのですが。

作成済みのタスクを他のデータセットにも実行する場合は、再実行したいタスクに結びついている入力データセットを変更してからタスクを再実行します。以下の手順に従って操作します。

  1. プロジェクトウィンドウで、タスクの入力となっているデータセットを右クリックして「プロパティ」を選択します。
  2. 「一般」タグの「変更」をクリックし、「データの挿入」ウィンドウで入力データセットを選択します。
  3. タスクを右クリックし、「このタスクを実行」を選択すると、「前回の実行結果を置き換えますか?」というメッセージが表示される、前回のデータセットを使用して作成したレポートを上書きしたくない場合には、「いいえ」を選択してください。

また、上記以外に、タスクによって自動生成されたコードを修正する方法があります。以下の手順に従って操作します。

  1. メニューバーから「挿入」→「コード」を選択し、プロジェクトウィンドにコードノードを追加します。
  2. タスクによって生成されたコードをコピーし、1で作成したエディタに貼り付けます。
  3. 該当する「DATA=」オプションの箇所を修正し、メニューバーの「コード」→「実行」を選択し、プログラムを実行します。

 

T5:既存プロジェクトの一部のタスクを繰り返し実行したいのですが、毎回タスクを個別に実行する以外に方法はありませんか。

プロセスフロービルダを使用して、プロジェクト内にプロセスフローダイアグラム(PFD)を定義することができます。ユーザは、このPFDを繰り返し実行することが可能です。以下の手順に従って操作します。

  1. メニューバーから「ツール」→「プロセスフロービルダ」を選択します。
  2. 左側のフレームからPFDに定義したいタスクを選択して、右側のフレームに実行したい順に追加し、「OK」をクリックします。
  3. プロジェクトウィンドウに追加されたPFDを選択し、すぐに実行する場合には「実行」を、スケジューリングをして定期的に自動実行させる場合には「スケジュールプロセスフロー」を選択し、スケジューリング設定を行ないます。

※ スケジューリングについては、「E3:一度作成したプロジェクトを定期的に実行させたいのですが。」の項もあわせて参照してください。

 

T6:一元度数表タスクと要約統計量タスクをどのように使い分けたらいいでしょうか。

どちらのタスクも、1変数に対する度数と度数に基づくパーセントを求めることができます。
累積度数と累積パーセントを求める場合には、一元度数表タスクを使います。一方、複数の変数を対象とする場合、また度数やパーセント以外の統計量を求める場合には、要約統計量タスクを使います。
要約統計量タスクは、複数の変数の組合せに対して30以上の統計量を求めることが可能です。

 

T7:要約統計量タスクと分布タスクをどのように使い分けたらいいでしょうか。

どちらのタスクも、合計や平均といった基本的な要約統計量を求めることができます。
分布タスクは、より詳細な要約統計量を出力します。たとえば、数値変数の正規分布への適合度や、最大値、最小値共に、極値のオブザベーションの値、ウインザー化平均やトリム平均といった値などです。、また要約統計量タスクは、以下のような場合に適しています。

  • 要約統計量タスクで算出可能な統計量を求める場合
  • 分類変数の組み合わせごとに統計量を求める場合
  • 要約統計量を含んだデータセットを出力したい場合

 

T8:SASに用意されているオプションがタスクウィンドウにありません。

SAS Enterprise Guideでは、SASに用意されているすべてのプロシジャやオプションをGUIで利用できるわけではありません。
必要とするオプションがGUIで提供されていない場合には、タスクによって基本的なコードを自動生成し、必要なオプションをを手動で追加する必要があります。
以下の手順に従って操作します。

  1. タスクウィンドウの左下にある「タスクコードをプレビューする」にチェックします。
  2. コードプレビュー」ウィンドウの「コードの挿入」をクリックし、左のフレームからオプションを追加したいステートメントを選択し、右のフレームに追加するコードを直接記述し、ウィンドウを閉じます。
  3. タスクを実行し、結果を確認します。
  4. また、T4と同じように、タスクによって自動生成されたコードをエディタに貼り付けて編集、実行することも可能です。

※タスクによって自動生成されたコードを直接編集しようとすると、「このコードには読み取り専用属性が設定されています。」というメッセージが表示され、コードを別ノードとしてプロジェクトに追加するように促されます。ここでは「はい」を選択してください。新しいコードノードはタスクコードのコピーですが、もはやタスクそのものとは関係ありません。コードをコピーした後に、オリジナルタスクやタスクコードを変更しても、コピーしたコードに影響を与えることはありません。

 

T9:新しく独自のタスクを作成することはできますか。

Visual BasicやVisual C++といった、Componet Object Model (COM)に対応した開発環境を用いてCOM Add-inを作成することで、独自のタスク(カスタムタスク)を作成できます。作成したAdd-inをSAS Enterprise Guideに登録すると、既存のタスクと同様に、あらゆるサーバ上のデータに対して、タスクを実行し、結果を得ることが可能です。

※カスタムタスクの詳細については、「SAS Enteprise Guide Custom Tasks」(英語)を参照してください。

 

T10:縦横変換を行なうことはできますか。

縦横変換をするには、変数の分割タスク、または転置タスクを使用します。どちらのタスクもTRANSPOSEプロシジャを実行します。変数の分割タスクは転置タスクのサブセットであり、TRANSPOSEプロシジャに馴染みのないユーザにとっても、シンプルで分かりやすいインターフェースとなっています。ここでは、変数の分割タスクを使って、以下のようなカード会社のデータを一人の顧客で1行に変換する処理を行ないます。

  1. プロジェクトウィンドウにあるカード利用履歴データをマウスで選択し、タスクウィンドウにある変数の分割タスクをダブルクリックします。
  2. 「変数」タブで、以下のように設定します。
    ・ 分割する変数 : 合計金額
    ・ 値識別変数 : 購入区分
    ・ オブザベーショングルーピング変数 : 顧客番号
  3. 「結果」タブで、出力するデータセット名を編集します。変数名の接頭語として、ここではアンダーバー( _ )を入力します。
  4. 「完了」をクリックし、出力データセットを確認します。
※変換後のテーブルからもわかるように、利用していない購入区分の値は欠損値となります。この欠損値を0に置き換える方法については、「Q8:欠損値を0に置き換えるにはどうすればいいですか」を参照してください。

 

T11:データ量が多いために、データを複数のMS Excelファイルに分割して保存しています。これらを一つのSASデータセットにまとめるにはどうしたらいいですか。

テーブルを縦に結合するには、テーブルの追加タスクを使います。以下の手順に従って操作します。

  1. プロジェクトウィンドウで対象となるデータをマウスで選択し、メニューバーから「データ」→「テーブルの追加」を選択します。
  2. 「テーブル」タブで「追加」をクリックし、追加したいテーブルを選択します。また、右下にある上下の矢印を使って、追加の順を変更します。
  3. 「結果」タブで、保存先と保存の形式を選択します。
  4. 「完了」をクリックし、出力データセットを確認します。