2011-02-14 59 views
0

我有一個數據集包含一些變量1和季度日期字段。我想通過datefield table(variable1)。另外,我不知道如何使用的DateField在索引像在索引中處理datefield?

attach(myds) 
table(variable1[datefield == "1984-01-01"]) 

在SQL我會做這樣的事情:

SELECT * FROM myds GROUP BY YEAR(datefield) 

,但我怎麼能做到這一點的R'我知道我可以將它變成一個字符字段並對其進行分解,但我更願意使用真正的日期字段 - 如果可能的話。

回答

3

看看yearround_datelubridate

+0

Thx!順便說一句:該函數被稱爲round_date :) – 2011-02-14 14:40:08

0

晴,我可以幫助自己:

format(datefield, "%Y") 

幫我把所有的多年沒有字符串分割。我仍然想知道其餘的(季度分組是可能的)。

來自Hadley的lubridate甚至比它更好,因爲它返回一個數值對象。

不過,我的問題是要找到最佳方式來找到按日期獲取頻率的最佳方法。 到目前爲止,我嘗試:

aggregate(myvar,list(datefield),FUN=table) 

,並結束了與像一個列表 1984年4月1日17,16,5,8,7,49

這是正常的,但仍然有點麻煩的過程。假設myvar是某種id,我想計算一段時間id的外觀。是否有替代循環?