x <- c(2341
,2115
,2402
,2180
,2453
,2507
,2679
,2622
,2618
,2648
,2523
,2473
,2513
,2466
,2544
,2537
,2564
,2582
,2716
,2904
,2851
,2932
,2772
,2811
,2935
,2783
,3003
,2995
,3127
,2985
,3287
,3236
,3252
,3228
,2856
,3176
,3362
,3036
,3330
,3251
,3318
,3238
,3597
,3708
,3902
,3745
,3426
,3526
,3483
,3458
,3824
,3696
,3518
,3814
,3996
,4136
,4037
,3915
,3760
,3955
,4160
,4115
,4202
,4018
,4233
,4029
,4401
,4645
,4491
,4379
,4394
,4472
,4614
,4160
,4328
,4202
,4635
,4542
,4920
,4774
,4698
,4916
,4703
,4616
,4873
,4375
,4801
,4427
,4684
,4648
,5225
,5174
,5181
,5266
,4839
,5032
,5221
,4658
,5014
,4980
,4952
,4946
,5365
,5456
,5397
,5436
,4995
,5019
,5249
,4799
,5137
,4979
,4951
,5265
,5612
,5572
,5403
,5373
,5252
,5437
,5296
,5011
,5294
,5335
,5398
,5396
,5724
,5898
,5718
,5625
,5380
,5488
,5678
,5224
,5596
,5184
,5620
,5531
,5816
,6086
,6175
,6112
,5813
,5740
,5821
,5294
,5881
,5589
,5845
,5706
,6355
,6404
,6426
,6375
,5869
,5994
,6105
,5792
,6011
,5968
,6255
,6208
,6897
,6814
,6897
,6596
,6188
,6406
,6548
,5842
,6555
,6424
,6596
,6645
,7203
,7128
,7133
,6778
,6593
,6591
,6120
,5612
,6070
,5983
,6145
,6303
,6588
,6640
,6719
,6575
,6487
,6510
,6365
,5844
,5974
,5880
,6279
,6342
,6598
,6801
,6529
,6369
,6028
,6187
,6164
,5866
,6198
,5898
,6462
,6063
,6496
,6678
,6554
,6513
,6210
,5928
,6268
,5582
,5869
,5764
,6082
,6062
,6810
,6727
,6537
,6175
,6014
,6109)
par2 = '12'
par1 = 'multiplicative'
par2 <- '12'
par1 <- 'multiplicative'
#'GNU S' R Code compiled by R2WASP v. 1.2.327 ()
#Author: root
#To cite this work: Wessa P., (2013), Classical Decomposition (v1.0.4) in Free Statistics Software (v$_version), Office for Research Development and Education, URL http://www.wessa.net/rwasp_decompose.wasp/
#Source of accompanying publication: Office for Research, Development, and Education
#
par2 <- as.numeric(par2)
x <- ts(x,freq=par2)
m <- decompose(x,type=par1)
m$figure
postscript(file="/var/wessaorg/rcomp/tmp/108km1448997635.ps",horizontal=F,onefile=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) 
plot(m)
dev.off()
mylagmax <- length(x)/2
postscript(file="/var/wessaorg/rcomp/tmp/20z921448997635.ps",horizontal=F,onefile=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) 
op <- par(mfrow = c(2,2))
acf(as.numeric(x),lag.max = mylagmax,main='Observed')
acf(as.numeric(m$trend),na.action=na.pass,lag.max = mylagmax,main='Trend')
acf(as.numeric(m$seasonal),na.action=na.pass,lag.max = mylagmax,main='Seasonal')
acf(as.numeric(m$random),na.action=na.pass,lag.max = mylagmax,main='Random')
par(op)
dev.off()
postscript(file="/var/wessaorg/rcomp/tmp/3havj1448997635.ps",horizontal=F,onefile=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) 
op <- par(mfrow = c(2,2))
spectrum(as.numeric(x),main='Observed')
spectrum(as.numeric(m$trend[!is.na(m$trend)]),main='Trend')
spectrum(as.numeric(m$seasonal[!is.na(m$seasonal)]),main='Seasonal')
spectrum(as.numeric(m$random[!is.na(m$random)]),main='Random')
par(op)
dev.off()
postscript(file="/var/wessaorg/rcomp/tmp/4kkqn1448997635.ps",horizontal=F,onefile=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) 
op <- par(mfrow = c(2,2))
cpgram(as.numeric(x),main='Observed')
cpgram(as.numeric(m$trend[!is.na(m$trend)]),main='Trend')
cpgram(as.numeric(m$seasonal[!is.na(m$seasonal)]),main='Seasonal')
cpgram(as.numeric(m$random[!is.na(m$random)]),main='Random')
par(op)
dev.off()

#Note: the /var/wessaorg/rcomp/createtable file can be downloaded at http://www.wessa.net/cretab
load(file="/var/wessaorg/rcomp/createtable")

a<-table.start()
a<-table.row.start(a)
a<-table.element(a,'Classical Decomposition by Moving Averages',6,TRUE)
a<-table.row.end(a)
a<-table.row.start(a)
a<-table.element(a,'t',header=TRUE)
a<-table.element(a,'Observations',header=TRUE)
a<-table.element(a,'Fit',header=TRUE)
a<-table.element(a,'Trend',header=TRUE)
a<-table.element(a,'Seasonal',header=TRUE)
a<-table.element(a,'Random',header=TRUE)
a<-table.row.end(a)
for (i in 1:length(m$trend)) {
a<-table.row.start(a)
a<-table.element(a,i,header=TRUE)
a<-table.element(a,x[i])
if (par1 == 'additive') a<-table.element(a,signif(m$trend[i]+m$seasonal[i],6)) else a<-table.element(a,signif(m$trend[i]*m$seasonal[i],6))
a<-table.element(a,signif(m$trend[i],6))
a<-table.element(a,signif(m$seasonal[i],6))
a<-table.element(a,signif(m$random[i],6))
a<-table.row.end(a)
}
a<-table.end(a)
table.save(a,file="/var/wessaorg/rcomp/tmp/5marr1448997635.tab") 

try(system("convert tmp/108km1448997635.ps tmp/108km1448997635.png",intern=TRUE))
try(system("convert tmp/20z921448997635.ps tmp/20z921448997635.png",intern=TRUE))
try(system("convert tmp/3havj1448997635.ps tmp/3havj1448997635.png",intern=TRUE))
try(system("convert tmp/4kkqn1448997635.ps tmp/4kkqn1448997635.png",intern=TRUE))

