2016-09-15 168 views
0

我有SAS的大學版,即它在瀏覽器窗口中打開。 我有來自治療組A,B和C的數據。我嘗試使用DO循環分別處理這些組以進行比較。當數據長度相同時,我可以在一個嵌套的DO循環中執行此操作。但這些團體的觀察數量不同,我遇到了麻煩。這裏是我的代碼:SAS中的DO循環和數據輸入

data AirPoll1 (keep = Group Ozone); 
label Group = "Treatment Group"; 
label Ozone = 'Ozone level (in ppb)'; 
do i=1 to 1; 
input Group [email protected]@ 
do j=1 to 15; 
    input Ozone @@; 
    output; 
    end; 
end; 
do i=1 to 1; 
input Group $ @@; 
do j=1 to 10; 
    input Ozone @@; 
    output; 
    end; 
end; 
do i=1 to 1; 
input Group $ @@; 
do j=1 to 11; 
    input Ozone @@; 
    output; 
    end; 
end; 

datalines; 
A 4 6 3 4 7 8 2 3 4 1 8 9 5 6 3 
B 5 3 6 2 1 2 4 3 2 4 
C 8 9 7 8 6 7 6 7 9 8 9 
; 
run; 
proc univariate data = AirPoll1; 
Var Ozone; 
by Group; 
histogram Ozone; 
run; 

我得到的錯誤是: 錯誤161-185:沒有匹配的DO/SELECT語句。

有沒有快速的方法來解決這個問題? 謝謝!

+1

你只是錯過了一個;在你的第一個循環之後輸入Group $ @@之後'do i = 1 to 1; 輸入組$ @@ **; **' – kl78

+0

@ kl78這樣做!不知道我錯過了什麼,但我很感激! – Jabernet

回答

0

快速修復的確

你已經錯過了斷第一輸入行的分號,

DOH :)

快樂編程