【发布时间】:2018-09-30 02:03:57
【问题描述】:
我想动态生成一个数据框,以便在收集更多数据时自动更新行值,以便我可以在 ggplot 中绘制条形图。
截至目前,我只有上个月的数据,当前数据如下:
Date Count
2018-09-01 12
2018-09-02 23
2018-09-03 5
2018-09-04 8
. .
. .
. .
2018-09-30 10
展望未来,将收集更多数据并产生价值 对于每一天的“计数”列。
我可以使用以下方法将上述 df 转换为monthly.df:
library(dplyr)
df %>% group_by(month=floor_date(Date, "month")) %>% summarize(Count=sum(Count))
month Users
2018-09-01 165
如果我使用这个新的 df 绘制一个 ggplot 图表,它只会给我一个条形图,因为目前没有其他月份的数据。但是,我仍然想为没有值的月份绘制一个 0 的月度图表。我的目标是生成一个如下所示的数据框:
Year Month Count
2018 Jan 0
2018 Feb 0
2018 Mar 0
2018 Apr 0
2018 May 0
2018 Jun 0
2018 Jul 0
2018 Aug 0
2018 Sep 55
2018 Oct 0
2018 Nov 0
2018 Dec 0
这样我就可以绘制一个如下所示的图表:
library(ggplot)
ggplot(monthly.users, aes(x= Month, y= Count, fill= Month)) + geom_bar(stat= "identity")
图表的值(即每个月)将在收集数据时自动生成。
不确定我是否需要编写一些函数来计算每个月的值,然后在最终数据帧中执行 rbind。如果有人可以帮助我,将不胜感激!
【问题讨论】: