2012-07-09 71 views
0

我的目標是使用來自多個數據集的數據創建Box-and-Whisker圖。重要提示:數據集的大小並不相同 - 我不確定這是否會成爲問題。我想下面的代碼:SAS:使用多個數據集的Box-and-Whisker圖

%macro plot; 
    %do i=1 %to 10; 
    ods graphics on; 
    title 'Box Plot for Durations'; 
    proc boxplot data=d&i; /*where d&i refers to my datasets*/ 
    plot durations/*HERE I am also having some difficulties because I have to refer to a y(durations)*x values. But I only have a y(durations) the one I want to boxplot - my x corresponds to the different datasets where I take the value. 
     boxstyle = schematic 
     nohlabel; 
     label durations = 'Durations'; 
    run; 
    %end; 
    %mend plot; 
    %plot; 

我希望我的x值指哪裏我把時間值箱線圖每個數據集。每個d1 d2 d3...d10是對應於10個不同公司的十個不同數據集。因此,我希望在一張圖上有10個boxplot ...有什麼見解?

+1

你可以看看PROC GREPLAY。有很多這方面的信息,例如http://pharmasug.org/download/papers/CC09.pdf – DavB 2012-07-10 09:06:28

回答

1

我認爲最好的方式是簡單地從我的數據集中抽取所​​有希望繪製的數據並將它們合併到一個文件中。我在合併數據之前創建了與每個​​數據集關聯的唯一id。然後通過下面的操作輕鬆地繪製數據:

title 'Box Plot for Durations'; 
    proc boxplot data=ALL_DATA; 
    plot boxplotdata*id/
     boxstyle = schematic 
     nohlabel; 
     label durations = 'Durations'; 
    run;