1 SAS と EXCEL による 統 計 処 理 1. はじめに アンケート 調 査 などで 集 めたデータを 加 工 解 析 するためには 統 計 ソフトの 利 用 が 必 須 であ る 本 演 習 では EXCEL と SAS を 使 ったデータ 解 析 の 方 法 について 説 明 する 2. 前 準 備 EXCEL EXCEL での 統 計 処 理 は 関 数 を 用 いる 方 法 と 分 析 ツール を 用 いる 方 法 があるが ここ では 分 析 ツール での 統 計 処 理 について 説 明 する 分 析 ツール はメニューバーの データ から 選 択 する 分 析 ツール が 表 示 されない 場 合 は オフィスボタン EXCEL のオプショ ン アドイン を 選 択 し 分 析 ツール をクリックし 設 定 ボタンを 押 して 分 析 ツール にチェックを 入 れて OK ボタンを 押 す SAS SAS は 医 学 関 連 の 国 際 誌 に 最 も 使 用 されている 統 計 パッケージの 1 つで データを 加 工 解 析 出 力 するための 総 合 システムである SAS の 構 造 SAS には 主 に 3 つのウィンドウがある Program editor ウィンドウ:プログラムを 書 き 込 むウィンドウ Log ウィンドウ:SAS システムからのメッセージが 出 力 される Output ウィンドウ: 計 算 結 果 が 出 力
2 Log ウィンドウ 通 常 の SAS からのメッセージは 青 警 告 エラーは 赤 字 で 出 力 される! Program editor ウィンドウ SAS で 統 計 解 析 を 行 うためには SAS 言 語 を 使 って どのデータをどのように 解 析 するかを 指 定 する 文 (ステートメント)が 必 要 これは 主 に 2 つのステップで 構 成 されている DATA ステップ: 分 析 したいデータを 指 定 し SAS データセットをシステム 内 に 作 成 する データをまとめたり 加 工 することができる PROC(プロシージャ)ステップ:SAS データセットにあるデータを 用 いて 計 算 作 図 統 計 処 理 などを 行 う SAS のデータセットを 作 成 しよう!! 例 ) 以 下 のサンプルデータを 使 って SAS データセットを 作 成 する 以 下 のサンプルデータは 厚 生 労 働 省 や 総 務 省 の 統 計 データから 少 子 化 に 関 連 しそうなデー タを EXCEL にまとめたものである 都 道 府 県 別 の 合 計 特 殊 出 生 率 母 親 の 初 婚 年 齢 老 年 人 口 割 合 教 育 費 割 合 実 収 入 完 全 失 業 率 が 含 まれている
3 合 計 特 殊 出 生 率 母 親 の 初 婚 年 齢 老 年 人 口 割 合 などを 変 数 (variable) データに 記 述 されている 各 個 体 (この 場 合 は 都 道 府 県 )をオブザベーショ ン(observation)と 呼 ぶ 変 数 には 文 字 型 と 数 値 型 がある ここでは 都 道 府 県 以 外 すべて 数 値 型 である 1. まず 初 めに EXCEL ファイルを CSV ファイル(カンマ 区 切 り)に 変 換 する 変 換 の 仕 方 : オフィスボタン 名 前 をつけて 保 存 する ファイルの 種 類 を csv に 変 える ファイル 名 をつけて 保 存 (ここでは N ドライブに demo.csv で 保 存 ) 2. SAS を 起 動 させ データを 読 み 込 む Program editor に 以 下 のプログラムを 書 き 込 む data test ; infile 'N: My SAS files demo.csv' delimiter=',' ; input id $ birth age old edu income unemp location; run ; DATA ステップ 注 意!! SAS ステートメントの 最 後 には 必 ずセミコロン(;) をつけること 解 説 data test ; infile N: My SAS files demo.csv delimiter=, ; Nドライブに 保 存 したデータ(demo.csv)から testという 名 前 の 新 しいSASデータセットを 作 成 する データセットの 名 前 は 原 則 として8 文 字 以 内 の 英 数 字 をつける このデータセッ トは 一 時 的 にSASデータセットのworkに 保 存 される input id $ birth age old edu income unemp location; 分 析 のため 変 数 名 を 設 定 する ここでは 8 つの 変 数 を 定 義 し データを 読 み 込 む 原 則 として 英 数 字 文 字 型 変 数 の 後 ろには$をつけて 数 値 と 区 別 する run ; 各 ステップの 終 わりを 明 確 にするマーク プログラムの 最 後 には 必 ず run コマンドを 入 れる
4 submit( 実 行 ) クリック!! 3. データが 読 み 込 まれたかどうかを 確 認 するために 出 力 proc print ; run ; PROC ステップ 解 説 proc print ; SAS データセットの 内 容 を 表 示 する data=でデータセットを 指 定 しなければ 直 近 に 作 成 され たデータセットの 内 容 が 表 示 される 4. 永 久 SAS データセットの 作 成 SAS データセットには 一 時 SAS データセット と 永 久 SAS データセット の 2 種 類 が あり 上 記 のように 読 み 込 まれたデータは いったん 一 時 SAS データセット としてライブラ リの work に 保 存 される
5 一 時 SAS データセット は SAS を 終 了 すると 保 存 されずに 消 えてしまう SAS データセット を 保 存 したい 場 合 は 永 久 SAS データセット を 作 成 して どこかに 物 理 的 に 保 存 しなければ ならない( 例 えば フロッピーやハードディスクに) 永 久 SAS データセット を 作 成 するために 以 下 のプログラムを 実 行 する libname ensyu 'N: My SAS files'; data ensyu.test ; set test; run; 解 説 libname ensyu 'N: My SAS files'; 永 久 保 存 データセットを 保 存 するディレクトリを 指 定 する ここでは N ドライブに 保 存 する ことを 指 定 その 他 のドライブを 使 うときは 書 き 換 える data ensyu.test ; set test; test という 名 前 の 一 時 的 SAS データセットからデータを 読 み 込 み ensyu というライブラリ の 中 に 同 じ 名 前 (test)の 永 久 データセットを 保 存 する 保 存 したドライブに test.sas7bdat という SAS システムのデータセットができたかどうかを 確 認 する ライブラリ 参 照 名 データセット 名 は 英 数 字 8 文 字 以 内 で 好 きな 名 前 をつける 注 意!!!SAS を 終 了 させた 後 あらためてスタートさせるときには libname ステートメン トを 再 度 サブミットする 必 要 がある libname ensyu 'N: My SAS files' ; data ensyu.test ; set ensyu.test ; run ; 他 にも SAS メニューから EXCEL データを 直 接 読 み 込 んでデータセットを 作 成 する 方 法 もある SAS メニューからの EXCEL データの 読 み 込 み ファイル データのインポート ファイル 名 の 指 定 SAS データセット 名 の 指 定 ( 例 えば メン バー:test) SAS ステートメントの 作 成 ( 例 えば test.sas) 3. 主 なデータ 解 析 1. 基 本 統 計 量 ( 平 均 標 準 偏 差 )の 算 出 proc means ; run ;
6 2. ヒストグラムの 確 認 proc gchart; hbar birth; run; 横 向 きのヒストグラムを 作 成 する hbar で 集 計 する 変 数 名 を 指 定 hbar の vbar にすると 縦 方 向 のヒストグラムを 作 成 する ヒストグラムでデータの 分 布 を 確 認 しよう!! 3. 相 関 係 数 の 算 出 proc corr; var birth age; run; スピアマンの 順 位 相 関 係 数 を 求 めるときは proc corr spearman; とする 2 変 数 間 の 関 連 の 強 さを 調 べる ここでは 合 計 特 殊 出 生 率 と 母 親 の 初 婚 年 齢 の 相 関 係 数 を 算 出 相 関 係 数 絶 対 値 が 1 に 近 いほど 強 い 相 関 を 示 す 有 意 確 率 p p<.05 の 場 合 は 帰 無 仮 説 (2 変 数 間 に 相 関 はない)を 棄 却 できる
7 EXCEL メニュー データ データ 分 析 を 選 択 相 関 を 選 ぶ 必 要 な 情 報 を 入 力 し OK を 押 す 対 象 となるデータのセ ル 範 囲 をマウスでドラ ッグして 指 定 する データの 1 行 目 が 変 数 名 の 場 合 はチェックを 入 れる 注 意!!EXCEL では 相 関 係 数 の 有 意 性 (p 値 )は 算 出 されないので 別 途 無 相 関 の 検 定 を 行 わなければならない 無 相 関 の 検 定 求 めた 相 関 係 数 と 標 本 数 から t 値 自 由 度 p 値 を 算 出 する 検 定 統 計 量 t=abs( 相 関 係 数 *SQRT( 標 本 数 -2)/SQRT(1- 相 関 係 数 ^2)) 自 由 度 = 標 本 数 -2 p 値 の 算 出 p=tdist(t 値, 自 由 度,2)
8 4. t 検 定 2 つのグループの 平 均 値 に 差 があるかどうかを 調 べる proc ttest; class location; var birth; run; class ステートメントには グループ 化 変 数 (2 つの 値 しかとらない 変 数 )を 指 定 ここでは 都 道 府 県 を 東 日 本 と 西 日 本 に 分 けた location を 指 定 した 等 分 散 性 の 検 定 結 果 p<.05 の 場 合 は 等 分 散 性 が 棄 却 される t 検 定 の 結 果 分 散 が 等 しい という 仮 定 下 では Pooled の t 値 を 採 用 EXCEL 分 析 ツール から t 検 定 : 等 分 散 を 仮 定 した 2 標 本 による 検 定 を 選 択 検 定 したいデータの セル 範 囲 を 変 数 1 と 変 数 2 に 指 定 する 変 数 1: 東 日 本 の 合 計 特 殊 出 生 率 変 数 2: 西 日 本 の 合 計 特 殊 出 生 率
9 p<.05 の 場 合 は 帰 無 仮 説 (2 群 間 の 平 均 値 は 等 しい)を 棄 却 できる 5. 回 帰 分 析 変 数 間 の 関 係 について 要 因 となる 変 数 ( 独 立 変 数 )が 結 果 となる 変 数 ( 従 属 変 数 )をどれだ け 予 測 できるのかを 調 べるときに 用 いる 手 法 独 立 変 数 が 1 つの 場 合 を 単 回 帰 分 析 複 数 の 場 合 を 重 回 帰 分 析 という ここでは 合 計 特 殊 出 生 率 を 母 親 の 初 婚 年 齢 老 年 人 口 割 合 教 育 費 割 合 実 収 入 完 全 失 業 率 で 説 明 できるかどうかを 調 べる proc reg; model birth=age old edu income unemp /STB; run; 目 的 変 数 = 説 明 変 数 にする p<.05 で 回 帰 式 の 有 意 性 が 認 められる 決 定 係 数 ( 寄 与 率 )を 示 す 1 に 近 いほど モデルの 当 てはまりが 良 いと 言 える 標 準 化 偏 回 帰 係 数 : 独 立 変 数 が 従 属 変 数 に 与 える 影 響 の 大 きさを 示 す
10 注 意!!model ステートメントのオプションに/STB を 加 えないと 標 準 化 偏 回 帰 係 数 は 算 出 されない 回 帰 係 数 は GLM プロシージャでも 分 析 可 能 EXCEL 分 析 ツール から 回 帰 分 析 を 選 択 必 要 な 情 報 を 入 力 する 入 力 Y 範 囲 には 従 属 変 数 を 指 定 する 入 力 X 範 囲 には 独 立 変 数 を 指 定 する EXCEL では 標 準 化 偏 回 帰 係 数 は 算 出 されな い その 他 の PROC については 以 下 のホームページを 参 考 にしてください http://peter.rd.dnc.ac.jp/ice/kougi/sas/waseda06a/ http://www.ipc.hokusei.ac.jp/~z00105/_kamoku/sas/sasman_.html http://www.ipc.hokusei.ac.jp/~z00105/_kamoku/sas/sas_tec.html