2017-02-24 138 views
0

使用R,我想抓住每個用戶ID的兩個最近日期條目,假設每個用戶ID有一個或多個條目。查詢選擇每個分組最近的2個記錄

我的數據的關鍵元素將是一個標識符(UserID)和日期類型的日期。

謝謝。

+0

您正在使用什麼數據庫? –

+0

MS 2014我相信。我是使用rodbc包中的sqldf或sqlquery的遊戲。 – Scottieie

+0

我給你下面的一個查詢。對於事物的R方面,任何教程都應該完成它。 –

回答

1

在SQL Server,它具有ROW_NUMBER()解析功能,你可以試試這個查詢:

SELECT t.UserID, t.date, ...other columns 
FROM 
(
    SELECT UserID, date, ...other columns, 
      ROW_NUMBER() OVER (PARTITION BY UserID ORDER BY date DESC) rn 
    FROM yourTable 
) t 
WHERE t.rn <= 2 
+0

呃,哇!這就像冠軍一樣工作,你指定的語法對我的軟弱頭腦是有意義的。我花了一天的較好時間回到這一天。我甚至看到我在哪裏瘋狂起來。再次感謝。 – Scottieie

+0

很高興爲您效勞。 –

+1

我剛剛開始了一個非常不同的分析數據的演出(之前20年的IT系統管理),並決定教我自己R.這個網站和跳進去幫助的人是祝福。 – Scottieie

相關問題