Tengo una estructura de datos que contiene dos series de tiempo: las fechas y los números de versión de Emacs y Firefox versiones. El uso de una ggplot2 comando es fácil hacer un gráfico que utiliza loess (de una manera que parece un poco divertido, que no me importa) para activar los puntos en las líneas.
¿Cómo puedo extender las líneas en el futuro? Quiero determinar donde y cuando Emacs y Firefox versión números de la cruz, y si hay una manera de mostrar un rango de error, mejor que mejor.
Dado que ggplot2 es el trazado de las líneas, se debe tener un modelo, pero no veo cómo decirle a extender sus líneas, o para obtener el modelo y hacer algo con ella.
> library(ggplot2)
> programs <- read.csv("http://www.miskatonic.org/files/se-program-versions.csv")
> programs$Date <- as.Date(programs$Date, format="%B %d, %Y")
> head(programs)
Program Version Date
1 Emacs 24.1 2012-06-10
2 Emacs 23.4 2012-01-29
3 Emacs 23.3 2011-03-10
4 Emacs 23.2 2010-05-08
5 Emacs 23.1 2009-07-29
6 Emacs 22.3 2008-09-05
> head(subset(programs, Program == "Firefox"))
Program Version Date
18 Firefox 16 2012-10-09
19 Firefox 15 2012-08-28
20 Firefox 14 2012-06-26
21 Firefox 13 2012-06-15
22 Firefox 12 2012-04-24
23 Firefox 11 2012-03-13
> ggplot(programs, aes(y = Version, x = Date, colour = Program)) + geom_point() + geom_smooth(span = 0.5, fill = NA)
(Nota: he tenido que cambiar los principios de las versiones de Firefox y gire a la 0.1 a 0.01, etc., porque "punto uno" y "punto diez" son iguales aritméticamente. Sé que Firefox es la liberación de cada seis semanas, pero no existen todavía, y estoy interesado en una respuesta general a esta predicción pregunta.)