2016-04-11 94 views
1

的意見,我有以下數據dplyr計算每個

Name   Date         Message 
Ted Foe  2011-06-10T05:06:30+0000    I love this product 
Sina Fall 2011-06-10T05:07:33+0000    Not my type of product 
Steve Hoe 2011-06-11T05:06:30+0000    Great Discussion! Thanks 
Selda Dee 2011-06-13T05:12:30+0000    Seen elsewhere 
Steven Hoe 2011-06-13T03:17:31+0000    Where? 
Selda Dee 2011-06-13T05:17:56+0000    Tinder 

我想天聚合,這樣我結束了這樣的

Date   Number of Posts 
2011-06-10  2 
2011-06-11  1 
2011-06-12  0 
2011-06-13  3 

時間序列我已經嘗試了以下

summary_df <- df %>% group_by(Date) %>% summarise(comments = count(message)) 

但是這不起作用。任何基於快速dplyr的解決方案都會很棒。

感謝您的幫助!

乾杯,拉烏爾

+0

您需要使用'tally'或者你可以使用'count',但你不必分組,因爲'count'已經爲你做了這個。看看'tally'中的例子 – konvas

回答

2

轉換爲Date下課後由「日期」欄分組,我們得到行(n())與summarise的數量。如果我們需要的是缺少在原始數據集的「日期」的元素,創建最小到最大「日期」的序列中的新的數據集,並做了left_join

df1 <- df %>% 
      group_by(Date = as.Date(Date)) %>% 
      summarise(comments = n()) 
expand.grid(Date = seq(min(df1$Date), max(df1$Date), by = '1 day')) %>% 
     left_join(., df1) 
+0

但是,我收到以下兩條錯誤消息: '錯誤:意外的'='在: 「group_by(created_time = as.Date(created_time))%>% 總結(消息()=」' 和 '錯誤seq.default(分鐘(posts1 $ CREATED_TIME),最大值(posts1 $ CREATED_TIME): '從' 不能NA,NaN或infinite' – rkuebler

+0

@ rkuebler我根據你展示的例子沒有得到任何錯誤,並且我發現你使用了錯誤的命令,如果你檢查我的帖子,我沒有使用'message()' – akrun

+0

對不起,我改變了太多東西。現在它工作得非常好,不幸的是,這段劇本在沒有任何評論的情況下確實把NA當成了任何東西反而得到零的機會?我也只能在控制檯中看到NAs,但不能在結果幀中看到。當我以CSV格式導出時,它們也不存在......任何有關這方面的幫助都非常感謝!非常感謝! – rkuebler