[R] ccf and covariance

Bob Farmer farmerb at gmail.com
Wed Apr 23 16:42:38 CEST 2008


Hi.
It's my understanding that a cross-correlation function of vectors x
and y at lag zero is equivalent to their correlation (or covariance,
depending on how the ccf is defined).
If this is true, could somebody please explain why I get an
inconsistent result between cov() and ccf(type = "covariance"), but a
consistent result between cor() and ccf(type = "correlation")?
Or have I misunderstood what is a cross-correlation?
(unfortunately, I can't seem to get a look at the ccf code, since I
think it's buried in some C function outside of the main environment)

Thanks very much.
--Bob Farmer
PhD candidate, Dalhousie University
Halifax, NS, Canada

Example:
d1<-data.frame(matrix(ldeaths, nrow = 6, byrow = T))
seventy_4<-as.numeric(d1[1,])
seventy_5<-as.numeric(d1[2,])

ccf(x=seventy_4, y=seventy_5,
  plot = F, lag.max = 0, type = "covariance"
)
cov(seventy_4, seventy_5)  #inconsistent

ccf(x=seventy_4, y=seventy_5,
  plot = F, lag.max = 0, type = "correlation"
)
cor(seventy_4, seventy_5)  #consistent



More information about the R-help mailing list