2016-09-02 5 views
4

R strucchangeパッケージの結果は、BaiとPerron(1998,2003)最小BICを使用して構造的なブレークを推定するとSAS proc autoregの結果と一致しません。発見された休憩の数は全く同じではありません。私のデータには約20,000件の観測がありますので、ここで問題を再現することは難しいです。しかし、だれでも、休憩の数に違いがある理由を説明できますか?以下は、ブレークを推定するために使用するRコードとSASコードの例です。R B strucchangeとSAS proc autoreg forバイペロン

Rコードは次のとおりです。

library(lmtest) 
library(sandwich) 
library(strucchange) 

data.bp <- breakpoints(formula, data) 
coeftest(data.bp) 
coeftest(data.bp, vcov = NeweyWest) 

SASコードは次のとおりです。

proc autoreg data=data; 
model formula/BP=(EPS=0.15, PRINTEST=BIC); 
+2

@DanielWisehartは次のように述べています。問題を再現し、可能な限り単純なデータセットを提供してください。 SASとRからの対応する出力も役立ちます(たとえば、私はSAS手順にアクセスできません)。最後に、計算は数値的に困難かもしれないことに注意してください(例:http://dx.doi.org/10.1002/jae.856参照)。 –

+0

SASとRのデータを電子メールで教えてください。Zeileis教授に教えてください。 – user1491868

+2

あなたが私にそれを送るなら、私は確かに見ています。しかし、あなたがそれをいくつかのWebページに載せてここにリンクさせると、他の人も同様に議論に参加することができます。 –

答えて

3

私はそれを言うことを憎むが、あなたは私たちがあなたのデバッグを支援するために単純な例を思い付くする必要がありますそれ。たぶんstrucchangeパッケージが間違っているか、あるいは別の仮定を使っている可能性があります。私はここからソースパッケージを引っ張った:https://cran.r-project.org/web/packages/strucchange/index.htmlとソースはテスト値であるの少なくとも3分の1と6,500行ちょうどです。シンプルな例を思いついたら、分かち合うことができます。 https://stackoverflow.com/help/mcveあなたは、言われたように、パッケージに組み込まれているテスト値があるため、あなたのニーズに応じて何が異なって行われているのか、間違っているのかを知ることができるからです。

+0

私自身のサニティチェックでは、明らかなブレークを伴ういくつかのデータを作成し、SASとRの出力は正確に一致しました。私の推測は、私の実際のデータの中断はより微妙です。 Rスクリプトは、実際のデータでSASスクリプトよりも多くのブレークを検出します。 – user1491868

+2

おそらく、これは情報基準の計算方法に多少の違いがあります。 BIC値は一致していますか? –