Re: [Rd] partial correlation function for multivariate time series

From: Simone Giannerini <sgiannerini_at_gmail.com>
Date: Fri, 14 Sep 2007 18:00:38 +0200

Dear Paul,

thanks for the reply,

On 14/09/2007, Paul Gilbert <pgilbert_at_bank-banque-canada.ca> wrote:
>
> Simone Giannerini wrote:
> > Dear Paul,
> >
> > there is no mention to the pacf in the multivariate setting in the book
> > you suggested.
>
> My apologies, I should have looked more carefully and realized the pacf
> discussion in Granger and Newbold is all univariate.
>
> > As I mentioned in private I suspect that pacf() in the multivariate case
> > computes the
> > partial autoregression matrix (in the terminology of Reinsel) rather
> > than the partial autocorrelation matrix
>
> It looks like pacf() uses the calculation in stats:::ar.yw.default , so
> roughly sounds consistent with what you say. I do think parts of this
> code pre-date Reisel's book, so inconsistency with his book would
> probably be imperfect foresight.
>
> BTW, I think bug reports with suggested fixes are usually more useful.
> And, at the very least, it seems the references in the documentation
> could be improved.

Yes, my intention is to have a look at a way to fix the problem once the problem has been recognized as such.
I did not have a look at the source code yet but if it is C I am afraid I won't be able to go very far as I use fortran instead.

Regards,

Simone

Paul Gilbert
>
> > as the two coincide in the univariate case but are different in the
> > multivariate case as stated explicitly
> > in Reisel (Sec. 3.3).
> > This would explain the coefficients well above 1 (in modulus) in the
> > example I have given.
> > To support my statement you can fit A VAR model to the data and compare
> > the coefficients with the results
> > from pacf():
> >
> > set.seed(10)
> > x <- rnorm(1000,sd=10000)
> > y <- rnorm(1000,sd=1)
> >
> > library(vars);
> > mod1 <- VAR(ts(cbind(x,y)),p=4,type="none"); # fit a VAR (OLS)
> >
> > ## Have a look at estimated coefficients
> >
> >> noquote(formatC(mod1$varresult$x$coefficients,format="f"))
> > ## Edited by me, compare with the first column of the results below from
> > the pacf (pacf(....)$acf[,1,])
> > x.l1 x.l2 x.l3 x.l4
> > 0.047 0.013 0.004 0.014
> > y.l1 y.l2 y.l3 y.l4
> > 374.117 72.758 -526.452 126.610
> >> noquote(formatC(mod1$varresult$y$coefficients,format="f"))
> > ## Edited by me, compare with the second column of the results below
> > from the pacf (pacf(....)$acf[,2,])
> > x.l1 x.l2 x.l3 x.l4
> > 0.000 -0.000 0.000 0.000
> > y.l1 y.l2 y.l3 y.l4
> > -0.046 -0.025 -0.033 -0.020
> >
> > pacf(ts(cbind(x,y)),plot=FALSE,lag.max=4)
> >
> > Partial autocorrelations of series 'ts(cbind(x, y))', by lag
> >
> > , , x
> >
> > x y
> > 0.047 ( 1) 0.000 (-1)
> > 0.011 ( 2) 0.000 (-2)
> > 0.005 ( 3) 0.000 (-3)
> > 0.013 ( 4) 0.000 (-4)
> >
> > , , y
> >
> > x y
> > 374.052 ( 1) -0.045 ( 1)
> > 66.717 ( 2) -0.024 ( 2)
> > -535.810 ( 3) -0.031 ( 3)
> > 120.802 ( 4) -0.020 ( 4)
> >
> > As you can see the coefficients fairly agree.
> > I might file a bug report in some days unless someone will prove me
> > wrong before.
> >
> > Regards,
> >
> > Simone
> >
> >
> >
> > On 11/09/2007, *Paul Gilbert* <pgilbert_at_bank-banque-canada.ca
> > <mailto:pgilbert_at_bank-banque-canada.ca>> wrote:
> >
> > I think the reference for pacf is
> >
> > @BOOK{GraNew77,
> > author = {Granger, C. W. J. and Newbold, Paul},
> > title = {Forecasting Economic Time Series},
> > publisher = {Academic Press},
> > year = 1977
> > }
> >
> > It certainly would not be Reisel's book, as parts of the code
> predate
> > that by many years.
> >
> > Paul Gilbert
> >
> > Simone Giannerini wrote:
> > > Dear all,
> > >
> > > I found the following behaviour with pacf() in the multivariate
> > case,
> > >
> > > set.seed(10)
> > > x <- rnorm(1000,sd=10000)
> > > y <- rnorm(1000,sd=1)
> > > pacf(ts(cbind(x,y)),plot=FALSE,lag.max=10)
> > >
> > > Partial autocorrelations of series 'cbind(x, y)', by lag
> > >
> > > , , x
> > >
> > > x y
> > > 0.047 ( 1) 0.000 ( -1)
> > > 0.011 ( 2) 0.000 ( -2)
> > > 0.005 ( 3) 0.000 ( -3)
> > > 0.013 ( 4) 0.000 ( -4)
> > > 0.050 ( 5) 0.000 ( -5)
> > > 0.034 ( 6) 0.000 ( -6)
> > > 0.026 ( 7) 0.000 ( -7)
> > > -0.029 ( 8) 0.000 ( -8)
> > > -0.010 ( 9) 0.000 ( -9)
> > > -0.013 ( 10) 0.000 (-10)
> > >
> > > , , y
> > >
> > > x y
> > > 374.052 ( 1) -0.045 ( 1)
> > > 66.717 ( 2) -0.024 ( 2)
> > > -535.810 ( 3) -0.031 ( 3)
> > > 120.802 ( 4) -0.020 ( 4)
> > > 142.824 ( 5) 0.004 ( 5)
> > > -211.711 ( 6) -0.010 ( 6)
> > > 201.856 ( 7) 0.058 ( 7)
> > > 286.079 ( 8) -0.035 ( 8)
> > > -134.057 ( 9) 0.032 ( 9)
> > > -18.200 ( 10) 0.019 ( 10)
> > >
> > > Since there are multiple ways of defining the pacf for
> > multivariate time
> > > series
> > > (see e.g. G.C. Reinsel, Elements of multivariate time series
> > analysis, II
> > > edition, Springer, section 3.3) and given that
> > > in ?pacf there is no reference to articles or books regarding its
> > > computation
> > > I do not know whether this behaviour is expected or it is a bug
> > instead.
> > > In the first case could you provide a reference for it? In the
> > second case I
> > > might file a bug report.
> > > Thank you for the great work you are doing for the scientific
> > community.
> > >
> > > kind regards,
> > >
> > > Simone Giannerini
> > >
> > > WINDOWS
> > >
> > > platform i386-pc-mingw32
> > > arch i386
> > > os mingw32
> > > system i386, mingw32
> > > status
> > > major 2
> > > minor 5.1
> > > year 2007
> > > month 06
> > > day 27
> > > svn rev 42083
> > > language R
> > > version.string R version 2.5.1 (2007-06-27)
> > >
> > > LINUX
> > >
> > >
> > >>R.Version()
> > >
> > > $platform
> > > [1] "x86_64-unknown-linux-gnu"
> > >
> > > $arch
> > > [1] "x86_64"
> > >
> > > $os
> > > [1] "linux-gnu"
> > >
> > > $system
> > > [1] "x86_64, linux-gnu"
> > >
> > > $status
> > > [1] ""
> > >
> > > $major
> > > [1] "2"
> > >
> > > $minor
> > > [1] "5.1"
> > >
> > > $year
> > > [1] "2007"
> > >
> > > $month
> > > [1] "06"
> > >
> > > $day
> > > [1] "27"
> > >
> > > $`svn rev`
> > > [1] "42083"
> > >
> > > $language
> > > [1] "R"
> > >
> > > $version.string
> > > [1] "R version 2.5.1 (2007-06-27)"
> >
> ====================================================================================
> >
> > La version française suit le texte anglais.
> >
> >
> ------------------------------------------------------------------------------------
> >
> >
> > This email may contain privileged and/or confidential information,
> > and the Bank of
> > Canada does not waive any related rights. Any distribution, use, or
> > copying of this
> > email or the information it contains by other than the intended
> > recipient is
> > unauthorized. If you received this email in error please delete it
> > immediately from
> > your system and notify the sender promptly by email that you have
> > done so.
> >
> >
> ------------------------------------------------------------------------------------
> >
> >
> > Le présent courriel peut contenir de l'information privilégiée ou
> > confidentielle.
> > La Banque du Canada ne renonce pas aux droits qui s'y rapportent.
> > Toute diffusion,
> > utilisation ou copie de ce courriel ou des renseignements qu'il
> > contient par une
> > personne autre que le ou les destinataires désignés est interdite.
> > Si vous recevez
> > ce courriel par erreur, veuillez le supprimer immédiatement et
> > envoyer sans délai à
> > l'expéditeur un message électronique pour l'aviser que vous avez
> > éliminé de votre
> > ordinateur toute copie du courriel reçu.
> >
> >
> >
> >
> > --
> > ______________________________________________________
> >
> > Simone Giannerini
> > Dipartimento di Scienze Statistiche "Paolo Fortunati"
> > Universita' di Bologna
> > Via delle belle arti 41 - 40126 Bologna, ITALY
> > Tel: +39 051 2098262 Fax: +39 051 232153
> > http://www2.stat.unibo.it/giannerini/
> > ______________________________________________________
>
> ====================================================================================
>
> La version française suit le texte anglais.
>
>
> ------------------------------------------------------------------------------------
>
> This email may contain privileged and/or confidential information, and the
> Bank of
> Canada does not waive any related rights. Any distribution, use, or
> copying of this
> email or the information it contains by other than the intended recipient
> is
> unauthorized. If you received this email in error please delete it
> immediately from
> your system and notify the sender promptly by email that you have done so.
>
>
> ------------------------------------------------------------------------------------
>
> Le présent courriel peut contenir de l'information privilégiée ou
> confidentielle.
> La Banque du Canada ne renonce pas aux droits qui s'y rapportent. Toute
> diffusion,
> utilisation ou copie de ce courriel ou des renseignements qu'il contient
> par une
> personne autre que le ou les destinataires désignés est interdite. Si vous
> recevez
> ce courriel par erreur, veuillez le supprimer immédiatement et envoyer
> sans délai à
> l'expéditeur un message électronique pour l'aviser que vous avez éliminé
> de votre
> ordinateur toute copie du courriel reçu.
>

-- 
______________________________________________________

Simone Giannerini
Dipartimento di Scienze Statistiche "Paolo Fortunati"
Universita' di Bologna
Via delle belle arti 41 - 40126  Bologna,  ITALY
Tel: +39 051 2098262  Fax: +39 051 232153
http://www2.stat.unibo.it/giannerini/
______________________________________________________

	[[alternative HTML version deleted]]


______________________________________________ R-devel_at_r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel

Received on Fri 14 Sep 2007 - 16:19:32 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Fri 14 Sep 2007 - 20:41:51 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-devel. Please read the posting guide before posting to the list.