Sas-scatterplots

提供:Dev Guides
移動先:案内検索

SAS-散布図

散布図は、デカルト平面にプロットされた2つの変数の値を使用する一種のグラフです。 通常、2つの変数間の関係を見つけるために使用されます。 SASでは、 PROC SGSCATTER を使用して散布図を作成します。

最初の例ではCARS1という名前のデータセットを作成し、後続のすべてのデータセットに同じデータセットを使用していることに注意してください。 このデータセットは、SASセッションが終了するまで作業ライブラリに残ります。

構文

SASで散布図を作成するための基本的な構文は次のとおりです-

PROC sgscatter  DATA = DATASET;
   PLOT VARIABLE_1 * VARIABLE_2
  /datalabel = VARIABLE group = VARIABLE;
RUN;

以下は、使用されるパラメータの説明です-

  • DATASET はデータセットの名前です。
  • VARIABLE は、データセットから使用される変数です。

単純な散布図

単純な散布図では、データセットから2つの変数を選択し、3番目の変数に関してそれらをグループ化します。 データにラベルを付けることもできます。 結果は、2つの変数がどのように*デカルト平面*に散らばっているかを示しています。

PROC SQL;
create table CARS1 as
SELECT make, model, type, invoice, horsepower, length, weight
FROM
SASHELP.CARS
WHERE make in ('Audi','BMW')
;
RUN;

TITLE 'Scatterplot - Two Variables';
PROC sgscatter  DATA = CARS1;
   PLOT horsepower*Invoice
  /datalabel = make group = type grid;
   title 'Horsepower vs. Invoice for car makers by types';
RUN;

上記のコードを実行すると、次の出力が得られます-

sactter_plot1

予測付き散布図

推定パラメーターを使用して、値の周りに楕円を描くことで、相関の強さを予測できます。 以下のように、追加のオプションを使用して楕円を描きます。

proc sgscatter data = cars1;
compare y = Invoice  x = (horsepower length)
        /group = type  ellipse =(alpha = 0.05 type = predicted);
title
'Average Invoice vs. horsepower for cars by length';
title2
'-- with 95% prediction ellipse --'
;
format
Invoice dollar6.0;
run;

上記のコードを実行すると、次の出力が得られます-

sactter_plot_eliipse

散布図

また、ペアにグループ化することにより、3つ以上の変数を含む散布図を作成することもできます。 以下の例では、3つの変数を検討し、散布図行列を描きます。 結果として得られるマトリックスの3つのペアを取得します。

PROC sgscatter  DATA = CARS1;
   matrix horsepower invoice length
  /group = type;

   title 'Horsepower vs. Invoice vs. Length for car makers by types';
RUN;

上記のコードを実行すると、次の出力が得られます-

sactter_plot_matrix