R version 2.13.0 (2011-04-13) Copyright (C) 2011 The R Foundation for Statistical Computing ISBN 3-900051-07-0 Platform: i486-pc-linux-gnu (32-bit) R is free software and comes with ABSOLUTELY NO WARRANTY. You are welcome to redistribute it under certain conditions. Type 'license()' or 'licence()' for distribution details. R is a collaborative project with many contributors. Type 'contributors()' for more information and 'citation()' on how to cite R or R packages in publications. Type 'demo()' for some demos, 'help()' for on-line help, or 'help.start()' for an HTML browser interface to help. Type 'q()' to quit R. > x <- c(1200,1400,1210,1260,1320,1320,1310,1260,1340,1180,1330,1390,1130,1340,1140,1290,1260,1280,1330,1270,1300,1150,1410,1250,1030,1320,1160,1300,1190,1310,1290,1320,1300,1230,1330,1220,1010,1290,1170,1240,1260,1260,1310,1360,1250,1170,1360,1140,1030,1260,1210,1190,1230,1350,1300,1340,1270,1220,1400,1120,1000,1260,1260,1150,1240,1360,1350,1280,1320,1210,1370,1060,1040,1260,1210,1200,1200,1290,1400,1280,1280,1220,1350,1000,980,1240,1190,1200,1150,1270,1410,1420,1260,1300,1410,1000,950,1280,1330,1190,1170,1270,1340,1470,1270,1280,1430,980) > par8 = '' > par7 = '0.95' > par6 = 'White Noise' > par5 = '12' > par4 = '0' > par3 = '1' > par2 = '1' > par1 = '48' > par8 <- '' > par7 <- '0.95' > par6 <- 'White Noise' > par5 <- '12' > par4 <- '0' > par3 <- '1' > par2 <- '1' > par1 <- '48' > #'GNU S' R Code compiled by R2WASP v. 1.2.291 () > #Author: root > #To cite this work: Wessa P., (2012), (Partial) Autocorrelation Function (v1.0.11) in Free Statistics Software (v$_version), Office for Research Development and Education, URL http://www.wessa.net/rwasp_autocorrelation.wasp/ > #Source of accompanying publication: > # > if (par1 == 'Default') { + par1 = 10*log10(length(x)) + } else { + par1 <- as.numeric(par1) + } > par2 <- as.numeric(par2) > par3 <- as.numeric(par3) > par4 <- as.numeric(par4) > par5 <- as.numeric(par5) > if (par6 == 'White Noise') par6 <- 'white' else par6 <- 'ma' > par7 <- as.numeric(par7) > if (par8 != '') par8 <- as.numeric(par8) > ox <- x > if (par8 == '') { + if (par2 == 0) { + x <- log(x) + } else { + x <- (x ^ par2 - 1) / par2 + } + } else { + x <- log(x,base=par8) + } > if (par3 > 0) x <- diff(x,lag=1,difference=par3) > if (par4 > 0) x <- diff(x,lag=par5,difference=par4) > postscript(file="/var/wessaorg/rcomp/tmp/1s33b1344874163.ps",horizontal=F,onefile=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) > op <- par(mfrow=c(2,1)) > plot(ox,type='l',main='Original Time Series',xlab='time',ylab='value') > if (par8=='') { + mytitle <- paste('Working Time Series (lambda=',par2,', d=',par3,', D=',par4,')',sep='') + mysub <- paste('(lambda=',par2,', d=',par3,', D=',par4,', CI=', par7, ', CI type=',par6,')',sep='') + } else { + mytitle <- paste('Working Time Series (base=',par8,', d=',par3,', D=',par4,')',sep='') + mysub <- paste('(base=',par8,', d=',par3,', D=',par4,', CI=', par7, ', CI type=',par6,')',sep='') + } > plot(x,type='l', main=mytitle,xlab='time',ylab='value') > par(op) > dev.off() null device 1 > postscript(file="/var/wessaorg/rcomp/tmp/2baxu1344874163.ps",horizontal=F,onefile=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) > racf <- acf(x, par1, main='Autocorrelation', xlab='time lag', ylab='ACF', ci.type=par6, ci=par7, sub=mysub) > dev.off() null device 1 > postscript(file="/var/wessaorg/rcomp/tmp/3wtg31344874163.ps",horizontal=F,onefile=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) > rpacf <- pacf(x,par1,main='Partial Autocorrelation',xlab='lags',ylab='PACF',sub=mysub) > dev.off() null device 1 > (myacf <- c(racf$acf)) [1] 1.0000000000 -0.3850100344 -0.2128718856 0.2121279666 0.0006739801 [6] 0.0310077103 -0.2466420412 0.0525485353 -0.0410537729 0.2309995994 [11] -0.2469966990 -0.2634305758 0.7544344310 -0.3099971439 -0.1296421603 [16] 0.1416457692 0.0307711287 -0.0036439263 -0.1761703560 0.0140906611 [21] -0.0640270633 0.2557410228 -0.2570322642 -0.1598885150 0.5672764243 [26] -0.2602513867 -0.0620351468 0.0939060101 0.0238282059 0.0028638099 [31] -0.1245588813 -0.0208261496 -0.0347432472 0.2363139412 -0.2847474214 [36] -0.0548068613 0.4556510811 -0.2666239873 -0.0256541638 0.1111228218 [41] -0.0174595113 0.0022917936 -0.0832044988 -0.0090746947 -0.0614444104 [46] 0.2126729662 -0.2494338631 -0.0164679437 0.3649958635 > (mypacf <- c(rpacf$acf)) [1] -0.385010034 -0.423947507 -0.097039998 -0.019124618 0.150523103 [6] -0.218593895 -0.221857283 -0.424907919 0.124639509 -0.133181244 [11] -0.508863883 0.379812247 0.144072447 0.172278114 0.052758385 [16] -0.014605241 -0.104172050 0.004806030 -0.088341931 -0.099044582 [21] -0.029624364 -0.006347408 0.055811139 0.064372828 -0.036337115 [26] -0.026307314 -0.023296496 -0.082911897 0.009411371 -0.022809158 [31] -0.018885169 0.086836106 0.078462228 -0.066206307 -0.002918372 [36] 0.082720078 -0.042435405 -0.071138283 0.037243622 -0.042277759 [41] 0.026633310 0.003641093 0.109268237 -0.072907482 -0.048616434 [46] 0.012153043 -0.008240402 -0.024443359 > lengthx <- length(x) > sqrtn <- sqrt(lengthx) > > #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,'Autocorrelation Function',4,TRUE) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'Time lag k',header=TRUE) > a<-table.element(a,hyperlink('http://www.xycoon.com/basics.htm','ACF(k)','click here for more information about the Autocorrelation Function'),header=TRUE) > a<-table.element(a,'T-STAT',header=TRUE) > a<-table.element(a,'P-value',header=TRUE) > a<-table.row.end(a) > for (i in 2:(par1+1)) { + a<-table.row.start(a) + a<-table.element(a,i-1,header=TRUE) + a<-table.element(a,round(myacf[i],6)) + mytstat <- myacf[i]*sqrtn + a<-table.element(a,round(mytstat,4)) + a<-table.element(a,round(1-pt(abs(mytstat),lengthx),6)) + a<-table.row.end(a) + } > a<-table.end(a) > table.save(a,file="/var/wessaorg/rcomp/tmp/45mgv1344874163.tab") > a<-table.start() > a<-table.row.start(a) > a<-table.element(a,'Partial Autocorrelation Function',4,TRUE) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'Time lag k',header=TRUE) > a<-table.element(a,hyperlink('http://www.xycoon.com/basics.htm','PACF(k)','click here for more information about the Partial Autocorrelation Function'),header=TRUE) > a<-table.element(a,'T-STAT',header=TRUE) > a<-table.element(a,'P-value',header=TRUE) > a<-table.row.end(a) > for (i in 1:par1) { + a<-table.row.start(a) + a<-table.element(a,i,header=TRUE) + a<-table.element(a,round(mypacf[i],6)) + mytstat <- mypacf[i]*sqrtn + a<-table.element(a,round(mytstat,4)) + a<-table.element(a,round(1-pt(abs(mytstat),lengthx),6)) + a<-table.row.end(a) + } > a<-table.end(a) > table.save(a,file="/var/wessaorg/rcomp/tmp/5sc1o1344874163.tab") > > try(system("convert tmp/1s33b1344874163.ps tmp/1s33b1344874163.png",intern=TRUE)) character(0) > try(system("convert tmp/2baxu1344874163.ps tmp/2baxu1344874163.png",intern=TRUE)) character(0) > try(system("convert tmp/3wtg31344874163.ps tmp/3wtg31344874163.png",intern=TRUE)) character(0) > > > proc.time() user system elapsed 1.232 0.298 1.722