2014-10-10 134 views
0

我有以下的數據集(虛構數據):SAS PROC REPORT

data have; 
    input team $ goals_12 goals_13 var_12_13; 
cards; 
LIV 20 25 .25 
MNC 21 24 .14 
MUN 30 25 -.17 
ARS 10 12 .20 
CHE 23 23 0 
EVE 20 18 -.1 
TOT 10 0 -1 
; 
run; 

我試圖創建此數據集的報告。以下是我有:

proc report data=have; 
    column team goals_12 goals_13 var_12_13; 
    define team/'Team'; 
    define goals_12/analysis '2012 Goals'; 
    define goals_13/analysis '2013 Goals'; 
    define var_12_13/order analysis format=percent. mean "Variance '12 to '13"; 
    rbreak after/summarize ul ol; 
run; 

這確實ALMOST我想要的一切。下面的事情我一直沒能搞清楚:

  1. 名稱摘要行「摘要」
  2. 排序按降序var_12_13使團隊具有最高方差是第一
  3. 我需要方差列的彙總是總數的差異,而不是變化的平均值(所以它應該是-5%)

回答

1

試試這個:

proc sort data=work.have; by descending var_12_13; 

proc report data=have; 
    column team goals_12 goals_13 var_12_13; 
    define team/'Team'; 
    define goals_12/analysis '2012 Goals'; 
    define goals_13/analysis '2013 Goals'; 
    define var_12_13/order=data analysis format=percent. mean "Variance '12 to '13" weight=goals_13; 

    compute team; 
    if _BREAK_ in ('_RBREAK_') 
     then do; 
      team="Summary"; 
     end; 
    endcomp; 

    rbreak after/summarize ul ol; 
run; 
+0

這是非常接近。出於某種原因,對於團隊TOT,-1不會轉換爲(100%)。另外,我可以格式化5%,這表明這是一個負數?現在看起來像是一個積極的變化。此外,我想使用proc排序,但認爲有一個內部的方式來處理變量的proc報告。 – pyll 2014-10-10 14:49:19