三、以MERGE敘述句做資料的橫向合併(變數合併)

 

當資料的變數太多時,通常被拆成多個資料,直到分析之前再把它們合併起來,此種情形需要用MERGE的敘述句去做處理,以下列出不同的情形來做介紹。

 

3.1  11合併(不採用BY敘述句)

 

採用此方法去合併的資料一定相當乾淨,因為此種方式是各資料集所對應的流水號做合併,會將第1筆資料與第1筆做合併,2筆資料與第2筆做合併直到第n筆,若研究者是採用此方式合併,在合併之前務必再三確認各樣本點的順序是否相同,以避免得到錯誤的分析結果。

 

 

3.2  採用BY敘述句

 

採用BY敘述句來合併資料集時,有兩點注意事項(1)不同資料集之間一定要有至少一個相同的變項讓BY敘述句能夠使用;(2)所有資料集一定要先根據BY的變項先排序過,所合併完的資料自然而然也會根據此變數重新排序過,以下分成3種情形來做介紹。

 

a.各資料集BY變數無相同數值(無重複樣本)

 

也就是各資料集的每一個樣本皆是獨立樣本,資料集無提供的數值皆會以遺漏值做呈現。


 

b. 資料集BY變數有相同數值,但無相同變數

 

 

發現資料集1與資料集2name中有相同數值CHANGCHOU,如果兩個資料集中CHANG的數量相同or CHOU的數量相同,在合併時還是會按照順序一對一的合併,不過由下面的例子發現兩資料集CHANGCHOU的數量不一樣多,因此在合併時會有一個規則。以CHANG為例,資料集1有兩筆,但資料集2僅有一筆(少了一筆),因此在合併成資料集3時,變數sexage仍用原本的資料,但heightweight所缺少的筆數會用資料集2CHANG的最後一筆數據進行補值的動作(黃色部分);CHOU也是一樣,資料集1有一筆(少了一筆),但資料集2有兩筆,因此在合併成資料集3時,變數heightweight仍用原本的資料,但sexage所缺少的筆數會用資料集1CHOU的最後一筆數據進行補值的動作(綠色部分)。


 

c. 資料集BY變數有相同數值,且有相同變數

 

 

大致上跟上面(二)的情形差不多,唯一不同的是兩個資料集同時有變數rank。以CHANG為例,當SAS讀到資料集1的時候,rank的數值應該為56,但SAS再繼續讀資料集2的時候,又會偵測到一個相同變數rank且數值為11,此時會把第1筆資料的5給覆蓋取代成11。在CHOU方面,當SAS讀到資料集1的時候,rank的數值應該為77,但SAS再繼續讀資料集2的時候,又會偵測到一個相同變數rank且數值為3377,此時會把第1筆資料的7給覆蓋取代成33,第2筆資料的7給覆蓋取代成77

 

Ps.很複雜對吧!!不過一般研究不太可能會發生這種BY變數的數值及變數重覆問題。

 


 

 

 

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 晨晰部落格新站 的頭像
    晨晰部落格新站

    晨晰統計部落格新站(統計、SPSS、BIG DATA討論園地)

    晨晰部落格新站 發表在 痞客邦 留言(1) 人氣()