如果您有几年的年度数据,但是对于最近一年只有部分年份的数据,是否有一种编程方式来延长最近一年的标准,可能使用ggplot2和geom_bar来指示全年是否会推断出部分年度数据?
这是一个很小的例子。假设2014年的数字为半年。有没有办法在“栏顶”添加相同的金额,即推断半年数据,颜色或填充不同?
yrs <- data.frame(Id = c(1, 2, 3), Year = c(2012, 2013, 2014), Amount = c(5e6, 6e6, 3e6))
ggplot(yrs, aes(x = Year, y = Amount)) + geom_bar(stat = "identity")
答案 0 :(得分:0)
为什么不添加一个类型变量来区分实际收入和预计收入,这样的话?
yrs <- data.frame(Id = c(1, 2, 3,4), Year = c(2012, 2013, 2014,2014),
Amount = c(5, 6, 3, 4))
yrs$type <- c(rep("Actual",3),"Projected")
然后,您可以使用填充集绘制条形图,如下所示:
ggplot(yrs, aes(x = Year, y = Amount,fill=type )) + geom_bar(stat = "identity")
给你这张图:
就扩展数据而言,有许多方法可以在R中进行预测。也许最简单的方法是使用线性模型:lm
。
如果您使用没有最近一年的数据集,并运行lm(Amount ~ Year, data = years)
,您将获得如下输出:
Call:
lm(formula = Amount ~ Year, data = yrs)
Coefficients:
(Intercept) Year
-2007 1
您可以使用年度系数来“推断”最新年份的值。因此,在这种情况下,我们2014年的推断值为7.
yrs$Amount[2] + linear_model$coeff[2]
Year
7