Series de Tiempo
La siguiente función realiza un gráfico que permite observar de la serie de tiempo y los valores que esta toma en el tiempo. La función recibe un único parámetro serie que puede ser la palabra “random” si el usuario quiere obtener la serie de manera aleatorio o el número del renglón de la serie que desea graficar. Por último, esta regresa una lista que guarda una base de datos con la serie de tiempo y gráfica de la misma.
Parámetros
- serie: “random” si desea una serie de tiempo aleatoria ó el número de la serie que desea graficar.
get_and_plot<-function(serie) {
if(serie=="random"){
renglon<-sample(1:1001,1,replace=FALSE) #Genera número aleatorio
a<-t(series[renglon, -c(1:7)]) #Obtiene datos de serie
a <-na.omit(a); Serie1<-data.frame(Tiempo=c(1:length(a)), Serie=a)
b<-ggplot(Serie1)+geom_line(aes(x=Tiempo, y=Serie), color="hotpink2", size=1.3)+
geom_point(aes(x=Tiempo, y=Serie), color="black")+ggtitle(paste("Serie",renglon))+
theme_bw()+ theme(plot.title = element_text(hjust = 0.5)) #Grafica
return(list(Serie1,b)) #Regresa la serie de tiempo y grafica
} else{
renglon<-serie
a<-t(series[renglon, -c(1:7)])
a <-na.omit(a); Serie1<-data.frame(Tiempo=c(1:length(a)), Serie=a)
b<-ggplot(Serie1)+geom_line(aes(x=Tiempo, y=Serie), color="hotpink2", size=1.3)+
geom_point(aes(x=Tiempo, y=Serie), color="black")+ggtitle(paste("Serie",renglon))+
theme_bw()+ theme(plot.title = element_text(hjust = 0.5))
return(list(Serie1,b))
}
}Ejemplos
A continuación se presentan varios ejemplos que permiten poner a prueba la función declarada anteriormente. Los primeros dos ejemplos serán pidiendo una serie aleatoria # Ejemplo 1
e1<-get_and_plot(serie="random");e1## [[1]]
## Tiempo Serie
## 1 1 670
## 2 2 634
## 3 3 655
## 4 4 658
## 5 5 729
## 6 6 715
## 7 7 962
## 8 8 92
## 9 9 817
## 10 10 894
## 11 11 859
## 12 12 863
## 13 13 868
## 14 14 847
## 15 15 819
## 16 16 845
## 17 17 643
## 18 18 874
## 19 19 695
## 20 20 117
## 21 21 867
## 22 22 982
## 23 23 889
## 24 24 1265
## 25 25 964
## 26 26 1019
## 27 27 1066
## 28 28 992
## 29 29 1018
## 30 30 940
## 31 31 1001
## 32 32 279
## 33 33 1220
## 34 34 1204
## 35 35 1079
## 36 36 1235
## 37 37 1203
## 38 38 1449
## 39 39 1502
## 40 40 1429
## 41 41 1289
## 42 42 1482
## 43 43 1284
## 44 44 474
## 45 45 1375
## 46 46 1594
## 47 47 1641
## 48 48 1345
## 49 49 1688
## 50 50 1747
## 51 51 1555
## 52 52 1824
## 53 53 1523
## 54 54 1704
## 55 55 1484
## 56 56 570
## 57 57 1512
## 58 58 2120
## 59 59 1800
## 60 60 1815
## 61 61 2162
## 62 62 1246
## 63 63 1365
## 64 64 1523
## 65 65 1597
## 66 66 1392
## 67 67 1654
## 68 68 190
## 69 69 1525
## 70 70 1573
## 71 71 859
## 72 72 985
## 73 73 1227
## 74 74 1122
## 75 75 988
## 76 76 1200
## 77 77 1068
## 78 78 1294
## 79 79 1217
## 80 80 153
## 81 81 1451
##
## [[2]]
Ejemplo 2 y 3
Los siguientes ejemplos se realizan pidiendo que se regrese una serie específica.
e2<-get_and_plot(serie=3); e2## [[1]]
## Tiempo Serie
## 1 1 2142
## 2 2 12935
## 3 3 19130
## 4 4 30500
## 5 5 48177
## 6 6 57462
## 7 7 64420
## 8 8 67689
## 9 9 73598
## 10 10 92086
## 11 11 112223
## 12 12 126902
## 13 13 145346
## 14 14 180153
## 15 15 193760
## 16 16 213266
## 17 17 236272
## 18 18 265299
## 19 19 254948
## 20 20 266798
## 21 21 338846
## 22 22 374028
## 23 23 362207
## 24 24 440716
## 25 25 525201
## 26 26 559479
## 27 27 603419
## 28 28 684536
## 29 29 634477
##
## [[2]]
e3<-get_and_plot(serie=10); e3## [[1]]
## Tiempo Serie
## 1 1 19.13
## 2 2 21.67
## 3 3 21.17
## 4 4 23.37
## 5 5 25.36
## 6 6 27.45
## 7 7 27.41
## 8 8 28.06
## 9 9 30.77
## 10 10 32.69
## 11 11 32.59
## 12 12 36.02
## 13 13 38.16
## 14 14 39.99
## 15 15 40.38
## 16 16 44.98
## 17 17 48.99
## 18 18 50.62
## 19 19 51.79
## 20 20 54.25
## 21 21 52.66
## 22 22 56.86
## 23 23 55.11
## 24 24 43.62
## 25 25 39.45
## 26 26 41.42
## 27 27 39.67
## 28 28 47.12
## 29 29 50.61
## 30 30 53.93
## 31 31 52.96
## 32 32 56.82
## 33 33 59.00
## 34 34 56.35
## 35 35 52.50
## 36 36 55.20
##
## [[2]]