绘制标准化数据子集

时间:2017-10-26 18:35:06

标签: r twitter ggplot2 data-visualization normalization

我必须做一个包括以下内容的线图: x =一天中的小时, y =(标准化)该小时的推文数量,仅考虑X月的推文, 每行代表一个月。

我的数据框采用这种格式(我有更多列,但它们与此无关):

id_tweet           day month hour minute id_user
550654742654103552  01   01   12    08   174744462
550654753106296832  01   01   12    08   15355832 
550654818935910400  01   01   12    08   628822209
550654823667089409  01   01   12    08   283218297
550654824308813824  01   01   12    09   58315346

我想知道有多少百分比的人在一月或七月发布推文,或者类似的东西。

问题是我的数据非常有偏见,收集算法发生了变化,我在1到4个月内得到了更多的数据,其余的则是。我的数据分布如下图所示:

长话短说,我需要总结所有在每天每小时发布的推文,并除以1月份推文的总数。这将是图表的第1行。

第2行将是在每天的每个小时发布的所有推文,并除以2月份推文的总数,依此类推。

希望我很清楚,我提前感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

您可以使用dplyr汇总数据:

library(dplyr)
agg_data = your_data %>% 
  group_by(month, day, hour) %>%
  summarize(n_hour = n()) %>%
  group_by(month) %>% 
  mutate(percent_of_month = n_hour / sum(n_hour))

我会把密谋留给你。