我有以下形式SAS,如何運行索引「通過行做」循環?
ID BookingDate Releasedate
1 1/1/11 1/3/14
2 3/3/12 1/4/17
.
.
.
數據(ID是一個字符變量)
的數據以這種方式繼續進行。
我所試圖做的是建立一個循環如下:
If id(i) = id(i+1) AND
BookingDate(i) = Bookingdate(i+1) AND
Releasedate(i) NE ReleaseDate(i+1)
Then
Releasedate(i) = Max(ReleaseDate(i), Releasedate(i+1))
Else
Releasedate(i) = Releasedate(i)
這將是對於i = 1(行數)
注意,我的語法是僞這裏。
一切我讀過有關陣列看起來它工作在列,一行一行。
謝謝!
SAS從上到下一行一次讀取數據,因此在您的示例中不需要索引。然而,這意味着你無法查看你(容易)前值,但可以使用滯後()函數與以前的值進行比較 - http://support.sas.com/documentation/cdl/en/ lrdict/64316/HTML /默認/ viewer.htm#a000212547.htm –
什麼是你真正嘗試計算?你能用文字來形容它嗎?它看起來像是你想在每個預訂日期內找到最大的發佈日期。 – Tom