2014-03-07 15 views
0

嘿我正在處理包含位置和日期的數據集。我想從我的原始數據框創建一個新的數據框。新的數據框將包括日期(僅月份)和一個數字對應於同一月份的總和。例如,如果我的數據集如下所示:我如何總結「行數」對應於相同的具體價值

USA 2011-01-01 
USA 2012-01-01 
UK 2010-05-01 
UK 2009-05-01 
USA 2012-07-01 

我的新數據框將如下所示;

January 2 
May  2 
July  1 

任何人都可以幫忙嗎?

回答

1

UPDATE:

stack(table(format(as.Date(df$V2), "%B"))) 

主要生產

values  ind 
1  2 January 
2  1 July 
3  2  May 

另一種選擇(禮貌阿難Mahto):

stack(table(df$V2)) # here V2 has the dates 

可生產

values  ind 
1  2 2010-05-01 
2  2 2011-01-01 
3  1 2012-07-01 

table計數V2值(日期);堆棧會在結果中添加一個帶有名稱(ind)的列的數據框。

+0

哪個工作很好。你能否再次檢查我的問題(因爲我改變了)。我想我需要應用另一個功能。謝謝。 – Ram

+0

@Ram,請參閱更新。 – BrodieG

+0

讚賞@BrodieG。這正是我想要的。非常感謝。 – Ram

0

使用aggregate()功能與length()

old.data <- data.frame(date = rep(c('a', 'b'), 10)) 
aggregate(old.data$date, by = list(old.data$date), FUN = length) 
+0

這是完美的。但是,如果我只想在幾個月內求和,該怎麼辦? (所以我不會在乎哪一年)。你有什麼建議嗎?我爲我的新需求編輯了我的問題。 – Ram

+0

將'by'更改爲月,可以從日期向量中提取,如[此處](http://stackoverflow.com/a/9749666/2196842)中所述。 –