熱線電話:13121318867

登錄
首頁精彩閱讀SPSS syntax“臨時”應用技巧_數據分析_大數據
SPSS syntax“臨時”應用技巧_數據分析_大數據
2014-09-09
收藏

     SPSS syntax“臨時”應用技巧_數據分析_大數據

數據分析的時候我們"數據分析師"經常會碰到這樣的問題:我們"數據分析師"計算過程中會有一些變量,這些變量的處理結果都只是中間過渡一下,便于后面的計算和分析;但是要得到分析結果少了這些臨時變量又不行,今天這里簡單的說說幾種常用的spss syntax“臨時”應用技巧,算是節后的禮物吧。

一、臨時性命令Temporary

    有的時候,我們"數據分析師"需要變換已有變量觀測值計算相關結果,但又不希望改變原有數據表中的數據。例如,游戲中有個概念叫Arpu,其與游戲的平均在線人數有關,這里我們"數據分析師"知道目前游戲的平均在線人數,預測做市場推廣之后游戲平均在線人數大概有5%的增長,利用新的平均在線人數來計算收益,就可以用temporary命令來處理這個5%的問題,而不改變原有數據。下面看看temporary運用的簡單示例:

----------------------------------------------------------------

#1  DATA LIST FREE /var1 var2.
#2  BEGIN DATA
#3  1 2
#4  3 4
#5  5 6
#6  7 8
#7  9 10
#8  END DATA.
#9  TEMPORARY.
#10 COMPUTE var1=var1+ 5.
#11 RECODE var2 (1 thru 5=1) (6 thru 10=2).
#12 FREQUENCIES
#13 /VARIABLES=var1 var2
#14 /STATISTICS=MEAN STDDEV MIN MAX.
#15 DESCRIPTIVES
#16 /VARIABLES=var1 var2
#17 /STATISTICS=MEAN STDDEV MIN MAX.

----------------------------------------------------------------

代碼解析:

上面的代碼利用temporary屬性,改變var1和var2的臨時值,進而計算var1var2變換后的相關統計量。(注:temporary命令只對其后的一條命令起作用。在這個例子中,temporary只對frequencies起作用,而descriptives命令還是按原始觀測值計算)

第1-8行創建一個含有var1、var2的數據集,并給var1輸入1、3、5、7、9,var2輸入2、4、6、8、10的觀測值

第9-11行給var1、var2賦予新的值,但不改變原數據集中var1、var2的觀測值

第12-17行則是Frequencies和Descriptives命令,用來描述統計VAR1和VAR2

二、臨時變量#VAR

   SPSS Syntax語句中所有的臨時變量都是以"#"作為前綴,什么是臨時變量,"數據分析師"在SPSS中臨時變量就是指運算用到,但不在結果和數據集中顯現出來的變量。例如:我們要通過A計算C,但A又沒辦法直接計算,我們"數據分析師"必須借助中間變量B才能達到計算目的,在整個過程中B都沒明顯的表現出來,那么此時B就可視為臨時變量,為了方便大家更好的理解,這里還是用一個簡單的例子來說明問題,示例代碼如下:

---------------------------------------------------------------

#1  DATA LIST FREE / var1.
#2  BEGIN DATA
#3  1 2 3 4 5
#4  END DATA.
#5  COMPUTE var2=1.
#6  LOOP #i=1 TO var1.
#7  - COMPUTE var2=var2 * #i.
#8  END LOOP.
#9  EXECUTE.

--------------------------------------------------------------

代碼解析:

上面的代碼利用臨時變量i做循環,通過var1計算var2,來完成一個迭代的過程。var1的初始觀測值為1、2、3、4、5,var2的初始值為1,臨時變量i從1取到5,通過compute命令計算出var2的值。

第1-4行創建含有var1的數據集,var1包含5個觀測值

第5行對var2進行初始賦值,產生一列變量名為var2,觀測值為1的變量

第6-8行為一個循環結構,循環N次計算var2的值(N為var1的觀測值數)

第9行為即時計算命令execute,類似于transform菜單欄中的running pending transforms(快捷鍵CTRL-G) 

三、其他

    除了上面說的2種情況外,其他更多的情形則是伴隨具體的分析方法產生的,如一次分析的結果作為下一次分析的數據,常見的如距離分析(proximities)的結果作為聚類分析(cluster)的原始數據,又或者是因子分析的結果作為回歸分析的數據,都可以采用將數據結果存儲為臨時文件的形式來方便計算,譬如常用的matrix out和matrix in子命令就能達到如此效果,由于時間關系,這里不再深入說明。 總之,所有的臨時性命令都是為了方便計算,有點類似于EXCEL中輔助列的作用。 

小貼士:

TEMPORARY常與以下命令一起使用:

1)數據轉換命令compute,recode,if和count,以及重復計算命令Do repeat

2)循環結構語句loop和do if

3)格式變換語句print formats,write formats和formats

4) 觀測值選擇加權語句select if,sample,filter和weight

5)變量聲明語句numric,string以及矢量申明語句vector

6) 標簽處理相關語句variable labels,value labels和missing values命令

7)文件存儲語句Xsave及split file.

數據分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

數據分析師資訊
更多

OK
客服在線
立即咨詢
日韩人妻系列无码专区视频,先锋高清无码,无码免费视欧非,国精产品一区一区三区无码
客服在線
立即咨詢