Sas で度数テーブルを作成する方法 (例付き)
SAS でproc freqを使用すると、データセット内の 1 つ以上の変数の頻度表をすばやく作成できます。
次の例は、最近出産した 100,000 人の母親のさまざまな特徴を含むBirthWgtという SAS 組み込みデータセットでこの手順を使用する方法を示しています。
proc printを使用して、このデータセットの最初の 10 個の観測値を表示できます。
/*view first 10 observations from BirthWgt dataset*/ proc print data =sashelp.BirthWgt( obs = 10 ); run ;
例 1: 変数の度数表
次のコードを使用して、Race 変数の度数テーブルを作成できます。
/*create frequency table for Race variable*/
proc freq data =sashelp.BirthWgt;
Race tables ;
run ;
出力テーブルには 4 つの列が含まれます。
- 頻度: 特定のカテゴリに属する観測値の総数。
- パーセンテージ: 特定のカテゴリに分類される合計観測値のパーセンテージ。
- 累積頻度: 現在の行まで (現在の行を含む) に考慮された観測値の合計数。
- 累積パーセンテージ: 現在の行までに考慮された合計観測値の累積パーセンテージ (現在の行を含む)。
たとえば、出力テーブルから次のことがわかります。
- ヒスパニック系母親の総数は22,139 人でした。
- ヒスパニック系母親の合計割合は22.14%でした。
- アジア人、黒人、またはヒスパニック系の母親の総数は41,496 人でした。
- アジア人、黒人、またはヒスパニック系の母親の累積割合は41.50%でした。
例 2: 変数の度数表 (ソート済み)
デフォルトでは、度数表はカテゴリ名に基づいてアルファベット順に並べ替えられます。ただし、 order関数を使用してカテゴリを頻度で並べ替えることができます。
/*create frequency table for Race variable, sorted by frequency*/
proc freq data =sashelp.BirthWgt order =freq;
Race tables ;
run ;
カテゴリが頻度に基づいて最高から最低の順に並べ替えられるようになったことに注意してください。
例 3: 変数の頻度表 (欠損値を含む)
デフォルトでは、欠損値は度数表に含まれません。
ただし、 missingコマンドを使用して、欠損値の頻度をカウントする行を含めるよう SAS に指示できます。
/*create frequency table for Race variable, sorted by frequency*/
proc freq data =sashelp.BirthWgt order =freq;
Race/missing tables ;
run ;
度数表には追加の行が追加されていないため、元のデータセットには人種の欠損値がなかったことがわかります。
例 4: いくつかの変数の度数表
複数の変数の度数表を一度に作成するには、複数の変数名をtables引数に含めるだけです。
たとえば、次のコードを使用して、Race と AgeGroup の度数テーブルを作成できます。
/*create frequency table for Race and AgeGroup variables, both sorted by frequency*/
proc freq data =sashelp.BirthWgt order =freq;
Race AgeGroup tables ;
run ;
両方の変数に対して度数表が作成されたことがわかります。