close
剛使用SAS或SPSS等統計軟體時,除了操作介面外,還要適應統計軟體處理資料的方式,以及資料整理的格式。
在唸統計課本的時候,資料常常長的像這個樣子
A B
60 75
70 66
80 83
90 82
95 90

但是假使這樣的資料直接輸入至SAS,那SAS絕對無法處理成績。

SAS的資料格式,是以"變項"和"case"組成的。變項代表case一種特性,是一種分類。而變項中有不同的"值",分別代表個體在該變項中的實際性質。例如身高是一種變項,163cm、178cm是實際上的值。一般統計分析,是在處理變項之間的關係,而無法處理case之間的關係。因此在輸入資料的時候,要先確認我要以什麼東西為case,然後把同樣的特性歸為同一變項。

以這個例子來說,不論a班和b班,成績都是同一種特性,是依附在學生身上的特性,也就是說我們要將每個學生視為一個case,將其成績要放在同一變項,班級也是一個變項。
因此我們要將上述的資料形式,轉換為:

ods 班級 成績
1 A
2 A
3 A
4 A
5 A
6 B
7 B
8 B
9 B
10 B
成績我就不打了,要轉換成這樣才能執行檢定。

SAS中的獨立樣本T檢定,是將同一變數,依照另外一個變數分成兩組,互相比較,所以我們要把原本ab兩個變數,轉換成同一變數,分為AB兩組互相比較。因此我們就先把資料分成兩個,再分組合就好了

假設原始檔案叫做O_file

/*把變項A抓出來*/
data a ;
set O_file;
keep a;
class_=A_;/*設定組別名稱為A_*/
c=a; /*要把AB轉換成同一變項才能合併*/
run;

/*把變項B抓出來*/
data b;
set O_file;
keep b;
class_=B_; /*設定組別名稱為B_*/
c=b /*要把AB轉換為同一變項才能合併*/
run;

/*垂直合併*/
data c;
set a b;
keep c class_;
run;

/*執行檢定*/
proc ttest;
var c; /*對C變項做檢定 以AB分組*/
class class_;
run;

這樣就可以囉~
arrow
arrow
    全站熱搜

    kenshin528 發表在 痞客邦 留言(0) 人氣()