R version 2.8.0 (2008-10-20) Copyright (C) 2008 The R Foundation for Statistical Computing ISBN 3-900051-07-0 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. > y <- c(5.1,4.9,5.2,5.1,4.6,3.7,3.9,3.1,2.8,2.6,2.2,1.8,1.3,1.2,1.4,1.3,1.3,1.9,1.9,2.1,2.0,1.9,1.9,1.9,1.8,1.7,1.6,1.7,1.9,1.7,1.3,2.0,2.0,2.3,2.0,1.7,2.3,2.4,2.4,2.3,2.1,2.1,2.5,2.0,1.8,1.7,1.9,2.1,1.4,1.6,1.7,1.6,1.9,1.6,1.1,1.3,1.6,1.6,1.7,1.6,1.7,1.6,1.5,1.6,1.1,1.5,1.4,1.3,0.9,1.2,0.9,1.1,1.3,1.3,1.4,1.2,1.7,2.0,3.0,3.1,3.2,2.7,2.8,3.0,2.8,3.1,3.1,3.2,3.1,2.7,2.2,2.2,2.1,2.3,2.5,2.3,2.6) > x <- c(4.56,4.41,4.33,4.20,4.25,4.25,4.19,4.17,4.21,4.21,4.17,4.16,4.19,4.08,4.06,3.98,3.82,3.82,3.72,3.56,3.57,3.49,3.32,3.23,3.04,3.00,2.82,2.73,2.59,2.58,2.53,2.31,2.31,2.30,2.07,2.07,2.06,2.06,2.05,2.05,2.05,2.05,2.05,2.06,2.07,2.08,2.05,2.03,2.02,2.02,2.01,2.01,2.01,2.01,2.01,2.01,2.03,2.04,2.03,2.05,2.08,2.06,2.09,2.19,2.56,2.54,2.63,2.78,2.84,3.02,3.28,3.29,3.29,3.29,3.32,3.34,3.32,3.30,3.30,3.30,3.31,3.35,3.48,3.76,4.06,4.51,4.52,4.53,4.63,4.79,4.77,4.77,4.77,4.81,4.83,4.76,4.61) > par7 = '0' > par6 = '1' > par5 = '1' > par4 = '12' > par3 = '0' > par2 = '1' > par1 = '-0.5' > #'GNU S' R Code compiled by R2WASP v. 1.0.44 () > #Author: Prof. Dr. P. Wessa > #To cite this work: Wessa P., (2008), Cross Correlation Function (v1.0.6) in Free Statistics Software (v$_version), Office for Research Development and Education, URL http://www.wessa.net/rwasp_cross.wasp/ > #Source of accompanying publication: Office for Research, Development, and Education > #Technical description: > par1 <- as.numeric(par1) > par2 <- as.numeric(par2) > par3 <- as.numeric(par3) > par4 <- as.numeric(par4) > par5 <- as.numeric(par5) > par6 <- as.numeric(par6) > par7 <- as.numeric(par7) > if (par1 == 0) { + x <- log(x) + } else { + x <- (x ^ par1 - 1) / par1 + } > if (par5 == 0) { + y <- log(y) + } else { + y <- (y ^ par5 - 1) / par5 + } > if (par2 > 0) x <- diff(x,lag=1,difference=par2) > if (par6 > 0) y <- diff(y,lag=1,difference=par6) > if (par3 > 0) x <- diff(x,lag=par4,difference=par3) > if (par7 > 0) y <- diff(y,lag=par4,difference=par7) > x [1] -0.015795141 -0.008757710 -0.014761410 0.005757573 0.000000000 [6] -0.006921437 -0.002340276 0.004663856 0.000000000 -0.004663856 [11] -0.001176462 0.003516738 -0.013083605 -0.002435791 -0.009926080 [16] -0.020779606 0.000000000 -0.013662675 -0.023046185 0.001485632 [21] -0.012063207 -0.027067145 -0.015187168 -0.034248901 -0.007621869 [26] -0.036282130 -0.019472397 -0.032284467 -0.002406081 -0.012243614 [31] -0.058514163 0.000000000 -0.002857557 -0.071335147 0.000000000 [36] -0.003369935 0.000000000 -0.003394563 0.000000000 0.000000000 [41] 0.000000000 0.000000000 0.003394563 0.003369935 0.003345603 [46] -0.010110101 -0.006864221 -0.003470277 0.000000000 -0.003496142 [51] 0.000000000 0.000000000 0.000000000 0.000000000 0.000000000 [56] 0.006966419 0.003444729 -0.003444729 0.006864221 0.010110101 [61] -0.006715538 0.010037101 0.031954171 0.101474757 -0.004911610 [66] 0.021658778 0.033732544 0.012738630 0.035910983 0.046555415 [71] 0.001679568 0.000000000 0.000000000 0.004993093 0.003291290 [76] -0.003291290 -0.003321165 0.000000000 0.000000000 0.001664345 [81] 0.006582690 0.020604195 0.040691289 0.038837912 0.050820115 [86] 0.001042350 0.001038897 0.010203147 0.015655500 -0.001913768 [91] 0.000000000 0.000000000 0.003815588 0.001889995 -0.006666987 [96] -0.014794369 > y [1] -0.2 0.3 -0.1 -0.5 -0.9 0.2 -0.8 -0.3 -0.2 -0.4 -0.4 -0.5 -0.1 0.2 -0.1 [16] 0.0 0.6 0.0 0.2 -0.1 -0.1 0.0 0.0 -0.1 -0.1 -0.1 0.1 0.2 -0.2 -0.4 [31] 0.7 0.0 0.3 -0.3 -0.3 0.6 0.1 0.0 -0.1 -0.2 0.0 0.4 -0.5 -0.2 -0.1 [46] 0.2 0.2 -0.7 0.2 0.1 -0.1 0.3 -0.3 -0.5 0.2 0.3 0.0 0.1 -0.1 0.1 [61] -0.1 -0.1 0.1 -0.5 0.4 -0.1 -0.1 -0.4 0.3 -0.3 0.2 0.2 0.0 0.1 -0.2 [76] 0.5 0.3 1.0 0.1 0.1 -0.5 0.1 0.2 -0.2 0.3 0.0 0.1 -0.1 -0.4 -0.5 [91] 0.0 -0.1 0.2 0.2 -0.2 0.3 > postscript(file="/var/www/html/rcomp/tmp/1ikru1228225248.ps",horizontal=F,pagecentre=F,paper="special",width=8.3333333333333,height=5.5555555555556) > (r <- ccf(x,y,main='Cross Correlation Function',ylab='CCF',xlab='Lag (k)')) Autocorrelations of series 'X', by lag -16 -15 -14 -13 -12 -11 -10 -9 -8 -7 -6 0.041 0.013 0.223 0.107 0.105 0.031 0.101 0.179 0.096 0.037 -0.013 -5 -4 -3 -2 -1 0 1 2 3 4 5 -0.075 -0.038 0.016 0.006 0.027 -0.133 0.022 -0.026 -0.103 0.099 0.094 6 7 8 9 10 11 12 13 14 15 16 0.148 0.161 0.142 0.084 -0.011 0.114 0.161 0.070 0.113 0.071 -0.054 > dev.off() null device 1 > > #Note: the /var/www/html/rcomp/createtable file can be downloaded at http://www.wessa.net/cretab > load(file="/var/www/html/rcomp/createtable") > > a<-table.start() > a<-table.row.start(a) > a<-table.element(a,'Cross Correlation Function',2,TRUE) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'Parameter',header=TRUE) > a<-table.element(a,'Value',header=TRUE) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'Box-Cox transformation parameter (lambda) of X series',header=TRUE) > a<-table.element(a,par1) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'Degree of non-seasonal differencing (d) of X series',header=TRUE) > a<-table.element(a,par2) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'Degree of seasonal differencing (D) of X series',header=TRUE) > a<-table.element(a,par3) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'Seasonal Period (s)',header=TRUE) > a<-table.element(a,par4) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'Box-Cox transformation parameter (lambda) of Y series',header=TRUE) > a<-table.element(a,par5) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'Degree of non-seasonal differencing (d) of Y series',header=TRUE) > a<-table.element(a,par6) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'Degree of seasonal differencing (D) of Y series',header=TRUE) > a<-table.element(a,par7) > a<-table.row.end(a) > a<-table.row.start(a) > a<-table.element(a,'k',header=TRUE) > a<-table.element(a,'rho(Y[t],X[t+k])',header=TRUE) > a<-table.row.end(a) > mylength <- length(r$acf) > myhalf <- floor((mylength-1)/2) > for (i in 1:mylength) { + a<-table.row.start(a) + a<-table.element(a,i-myhalf-1,header=TRUE) + a<-table.element(a,r$acf[i]) + a<-table.row.end(a) + } > a<-table.end(a) > table.save(a,file="/var/www/html/rcomp/tmp/2efyv1228225248.tab") > > system("convert tmp/1ikru1228225248.ps tmp/1ikru1228225248.png") > > > proc.time() user system elapsed 0.389 0.166 0.465