短い時系列データのアップ/ダウンパターンの分析


8

私は時系列データをあまり頻繁に扱っていないので、この特定の質問をどのように進めるのが最善かについて、いくつかの指針を探しています。

次のデータがあるとしましょう-以下のグラフ:

ここに画像の説明を入力してください

ここでは、x軸に年があります。Y軸は「不平等」の尺度です。たとえば、国の所得の不平等かもしれません。

この質問について、私は年ごとにデータにアップ/ダウンの性質があるかどうかを尋ねることに興味があります(より良い説明が必要なため)。本質的には、昨年、不平等が前年度から上昇したのか、今は低下する可能性があるのか​​?浮き沈みの大きさも重要な要素です。

私はそのようなことを考えていますwavelet analysisFourier analysis私は前にこれらを使用していないものの、5月の助けを、私はこのようなサンプルサイズが小さすぎると考えています。

フォローアップするためのアイデア/提案に興味があります。

編集:

これらはこのチャートのデータです:

#   year     value
#1  1956 0.9570912
#2  1957 1.0303563
#3  1958 0.9568302
#4  1959 1.1449074
#5  1960 0.8962963
#6  1961 1.0431552
#7  1962 0.8050077
#8  1963 0.8533181
#9  1964 0.9971713
#10 1965 1.0453083
#11 1966 0.8221328
#12 1967 1.0594876
#13 1968 1.1244195
#14 1969 1.0705498
#15 1970 0.8669457
#16 1971 0.8757319
#17 1972 1.0815189
#18 1973 1.1458959
#19 1974 1.2782848
#20 1975 1.0729718
#21 1976 1.1569416
#22 1977 1.2063673
#23 1978 1.1509700
#24 1979 1.1172020
#25 1980 1.0691429
#26 1981 1.0907407
#27 1982 1.1753854
#28 1983 0.9440187
#29 1984 1.1214175
#30 1985 1.2777778
#31 1986 1.2141739
#32 1987 0.9481722
#33 1988 1.1484652
#34 1989 0.7968458
#35 1990 1.1721074
#36 1991 1.1569523
#37 1992 0.8160300
#38 1993 0.9483291
#39 1994 1.0898612
#40 1995 0.8196819
#41 1996 1.0297017
#42 1997 1.0207769
#43 1998 0.9720285
#44 1999 0.8685848
#45 2000 0.9228595
#46 2001 0.9171540
#47 2002 1.0470085
#48 2003 0.9313437
#49 2004 1.0943982
#50 2005 1.0248419
#51 2006 0.9392917
#52 2007 0.9666248
#53 2008 1.1243693
#54 2009 0.8829184
#55 2010 0.9619517
#56 2011 1.0030864
#57 2012 1.1576998
#58 2013 0.9944945

ここにそれらはRフォーマットにあります:

structure(list(year = structure(1:58, .Label = c("1956", "1957", 
"1958", "1959", "1960", "1961", "1962", "1963", "1964", "1965", 
"1966", "1967", "1968", "1969", "1970", "1971", "1972", "1973", 
"1974", "1975", "1976", "1977", "1978", "1979", "1980", "1981", 
"1982", "1983", "1984", "1985", "1986", "1987", "1988", "1989", 
"1990", "1991", "1992", "1993", "1994", "1995", "1996", "1997", 
"1998", "1999", "2000", "2001", "2002", "2003", "2004", "2005", 
"2006", "2007", "2008", "2009", "2010", "2011", "2012", "2013"
), class = "factor"), value = c(0.957091237579043, 1.03035630567276, 
0.956830206830207, 1.14490740740741, 0.896296296296296, 1.04315524964493, 
0.805007684426229, 0.853318117977528, 0.997171336206897, 1.04530832219251, 
0.822132760780104, 1.05948756976154, 1.1244195265602, 1.07054981337927, 
0.866945712836124, 0.875731948296804, 1.081518931763, 1.1458958958959, 
1.27828479729065, 1.07297178130511, 1.15694159981794, 1.20636732623034, 
1.15097001763668, 1.11720201026986, 1.06914289768696, 1.09074074074074, 
1.17538544689082, 0.944018731375053, 1.12141754850088, 1.27777777777778, 
1.21417390277039, 0.948172198172198, 1.14846524606799, 0.796845829569407, 
1.17210737869653, 1.15695226716732, 0.816029959161985, 0.94832907620264, 
1.08986124767836, 0.819681861348528, 1.02970169141241, 1.02077687443541, 
0.972028455959697, 0.868584838281808, 0.922859547859548, 0.917153996101365, 
1.04700854700855, 0.931343718539713, 1.09439821062628, 1.02484191508582, 
0.939291692822766, 0.966624816907303, 1.12436929683306, 0.882918437563246, 
0.961951667980037, 1.00308641975309, 1.15769980506823, 0.994494494494494
)), row.names = c(NA, -58L), class = "data.frame", .Names = c("year", 
"value"))

非常に単純なアイデア:時系列の差を取り、自動相関係数を確認するのはどうですか?
psarka 2014年

データは現在、ローレンツ非対称を使用して測定された不等式として明らかにされています。@IrishStatによる回答の下のOPのコメントを参照してください。しかし、より滑らかな曲線の性質は何ですか?通常、表示している内容を恥ずかしがり屋にすると、質問がよりわかりにくくなり、実用的ではなくなります。
Nick Cox

短い観測サンプルに対する@jalapicフーリエ分析は、ほとんどの場合無意味です。あなたは25年の波長でサイクルを選ぶかもしれませんが、それは非常に弱くなるでしょう。せいぜい1サイクルしかありません。フーリエは、反復可能なシリーズまたは少なくとも長いシリーズがある物理データ用に設計されました。
Aksakal 2014年

あなたが説明するアップダウンの性質は、平均への回帰という考えによく適合していることに気付きます。つまり、シリーズに有馬の意味での記憶がない場合でも、そのような上下の振る舞いがあります。
Korone 2014年

回答:


6

系列が無相関の場合、不必要に差分を取ると自己相関が注入されます。シリーズが自己相関であっても、不当な差異は不適切です。単純なアイデアと単純なアプローチには、多くの場合、望ましくない副作用があります。モデル識別プロセス(ARIMA)は元のシリーズから始まり、差異が生じる可能性がありますが、理論的根拠がない限り、不当な差異から始めることはできません。ご希望の場合は、短期間のシリーズを投稿していただければ、このシリーズのモデルを特定する方法を説明します。

データの受信後:

データのACFは、最初(または最後)にARIMAプロセスを示していません。ここでは、ACFとPACFの両方と
画像
、ここではACFのみです。
画像ただし、データには2つのレベルシフトがあるようです... 1つは1972 でもう1つは1992です。それらはレベルシフトをほぼキャンセルしているようです。有用なモデルには、1989年、1959年、および1983年の期間における3つの異常な値の組み込みが含まれる場合も画像
あります。
画像
モデルの統計はここにあります。ここに
画像
、実際/適合と予測があり画像、ここに残差プロットがあり、モデルの十分性を示してい画像ます。これは、残差のacfによって確認され画像ます。最後に、適合と予測で結果を要約し画像ます。
要約すると、系列(おそらく比率)には重要な自己回帰メモリがありませんが、明らかな決定論的構造(統計的に有意)があります。すべてのモデルが間違っていますが、一部は便利です(GEPボックス)。

1モデルの違いによるものであった場合は、いくつかの議論の後...そして一つは...次のモデルになるだろうここに画像の説明を入力してください実績/のFITとFORECASTでここに画像の説明を入力してください。予測は不気味に似ています... MA係数は、差分演算子を効果的にキャンセルします。


提案をありがとう。もっと聞きたいです-生データを質問に追加しました。
ハラピック2014年

2
@IrishStatは、6つのパラメーターを持つモデルを提案しました。データセット全体は58観測です。これにより、パラメーターごとに10観測になります。これは経済的なデータではなかったとしても、サンプルは6パラメータモデルをサポートするには小さすぎると思います。これは経済モデルなので、純粋な時系列モデルは機能しないと言います。外生変数(GDP?)または何らかの構造モデルが必要です。
Aksakal 2014年

2
モデルは、3つの異常なポイント(パルス)を無視するように簡単に簡略化できます。これは、係数を3つに減らします..定数と2つのレベルシフトインジケーター...は、もっと簡単にできません!そして、それでも合理的な表現を提供するでしょう... 2つのレベルシフト。純粋な時系列モデルが機能しないことに同意します。私が提示したモデルは、2つのレベルシフトインジケーターを備えた通常の回帰モデルです。メモリがないため、モデルにARIMA構造がないため、古典的に言えば時系列モデルではありません。
IrishStat 2014年

「もっと変数が必要だ」と叫ぶことはできませんが、私の経験ではこれはそうです。この問題はそれが何であるかです!解け!
IrishStat 2014年

@ aksakal、irishstatモデルが示すのは、5つの変数があるということです。節約が懸念される場合は、単にパルスをオフにして、opの質問に対処するレベルシフトを維持するだけで済みます。時系列モデルを選択する前に、このタイプのレベルシフトの検出を効率的に行うオートボックス以外の方法論は知らない
予測

3

x1,x2,x3,...,xnf(x)f(x)ytyt=1:xt<xt+1yt=0:xtxt+1

xtここに画像の説明を入力してください

ytσ=1.108σ15=σ/15=0.291.2σn

更新:サイクル

OPの質問のグラフは、ある種の長い実行サイクルがあることを示唆しているようです。これにはいくつかの問題があります。

  1. ランダムなシーケンスを生成すると、サイクルのようなものがランダムに表示されることがあります。したがって、純粋に観測データである58のデータポイントでは、何らかの背後にある経済理論がないとサイクルを宣言することは不可能です。経済的な理由がなければ、だれもそれを真剣に受け止めることはできません。そのためには確実に外生変数が必要です、私は恐れています。
  2. この素晴らしいペーパーをチェックしてください:循環プロセスのソースとしてのランダムな原因の合計、オイゲン・スラッツキー、エコノメトリック、Vol。5、No。2(1937年4月)、105-146ページ。基本的に、サイクルは何らかのMAプロセスによって引き起こされることがあります。
  3. これは幻想かもしれません。私はプレゼンテーションでこのトリックをよく使用します。実際のデータを表示してから、線、円、または矢印を描いて、聴衆の脳を混乱させます:)追加の線は、脳をだましてまったく存在しない可能性がある傾向を確認したり、実際よりもはるかに強く見えるようにします。

このボードで45か月間、私は回答についてめったにコメントしませんでしたが、この場合、あなたの回答は、眉をひそめ、言葉を失います。モデル、重要度のテスト、仮定に関するテスト、信頼区間のある予測、論理的な結論について説明してください。
IrishStat 2014年

1
xtytxtytxtytyt

私見彼のアップ/ダウンは期間ごとではなく、より長い期間にわたってでした。ご説明ありがとうございます。彼のデータには、予測可能なアップ/ダウンシーケンスを示唆するものは何もありません。
IrishStat 2014年

このモデルでは予測できません。それらはランダムですが相関しています
Aksakal 2014年

私はそれらが無相関であることに強く同意しません... 3つの体制のそれぞれの中で:1956-1972 .... 1973-1991 ... 1992-2013 ... 3つの異常なポイント/リーディングを調整/修正した場合。
IrishStat 2014年

2

補足1:データに長い周期的な傾向が見られることが1つあります。これは、前年比の分析にそれほど影響を与えることはありません*-したがって、この非常に基本的な分析では、それを無視して、関心のある効果を除いて、データが均質であるかのように扱います。

*(反対方向の動きの数は、均質性で期待するものから減少する傾向があります-したがって、このテストの能力が多少低下する傾向があります。その影響を定量化することはできますが、私は思いません違いを生み出すのに十分な大きさである可能性が高い場合を除き、強いニーズがあります。それがすでに重要である場合、p値を少し小さくするようなものに調整することは、労力の無駄になります。)

余談2:述べたように、あなたの質問は片側の選択肢を含んでいるようです。これがあなたの望んでいることを基に私は働きます。

基本的な質問に直接向けられた簡単な分析から始めましょう。これは、「増加の後に減少が続く可能性が高いですか?」という線に沿っているようです。

ただし、最初に表示されるほど単純ではありません。純粋にランダムなデータを持つ安定したシリーズでは、増加の後に減少が続く可能性高くなります。私たちが検討している仮説には3つの観測が含まれていることに注意してください。

ここに画像の説明を入力してください

これらの6つの方法のうち、4つは方向の変更を伴います。したがって、純粋にランダムなシリーズ(分布に関係なく)では、時間の2/3の方向の反転が見られます。

[これはランアップテストとダウンテストに密接に関連しており、ランテストが多すぎてランダムにできないかどうかに関心があります。代わりにそのテストを使用できます。]

あなたが実際に興味を持っているのは、ランダムな2/3よりも高いかどうかではなく、1/2よりも大きいかどうかです。

H0:

H1:

検定統計量:シフトとそれに続く反対方向のシフトの比率。

トリプルが重複しているので、トリプル間にある程度の依存関係があると思います。これを二項として扱うことはできません(データを重複しないトリプルに分割すると、うまくいくでしょう)。

この依存関係を念頭に置いて、検定統計量の分布を計算することもできますが、この場合は必要ありません。方向反転トリプルの観測された比率は、ランダム系列の予想される数2/3のすぐ下にあるためです。 、そして私たちはそれ以上の逆転にのみ興味があります。

そのため、これ以上計算する必要はありません。ランダムな系列で得られるよりも、反転(上昇または下降)する傾向の証拠はまったくありません。

[無視された穏やかなサイクルが、これが実質的な違いを生むのに十分なほど近くに予想される比率を下げるのに十分な影響を与えることは本当に疑わしい。]


ありがとう-非常に興味深い。実行テストに関する簡単な質問。ランダム性をテストするために典型的な実行テストを参照していますか?上記のデータから、次の実行を生成できます 1 0 1 0 1 0 1 1 1 0 1 1 0 0 1 1 1 1 0 1 1 0 0 0 1 1 0 1 1 0 0 1 0 1 0 0 1 1 0 1 0 0 0 1 0 1 0 1 0 0 1 1 0 1 1 1 0。1は系列が上向きであることを示し、0は系列が下向きであることを示します。Rパッケージruns.testから使用すると、tseries1.81の検定統計量と0.07のapが得られます。私はこれらのサンプルデータについてあまり心配していませんが、これがあなたが参照していた種類の分析なのかどうか疑問に思いますか?
ハラペーク2014年

いいえ、それは1種類のラン(標識の固まりなど)のランであり、ランアップではありません。これとは少し異なる種類の仮説に適しています。
Glen_b-モニカを復元する

@Glen_b、アップダウンやそのようなものの6つの可能な方法は、私の回答に投稿した論文からさかのぼることができる文献でカバーされています。特に、あなたの写真から、6つの組み合わせからアップダウンシーケンスを取得するには2つの方法があることが簡単にわかります。P = 1/3配列における局所ピークの任意の場所に遭遇することが、この手段は、すなわち、ピーク間の平均距離は、正確に3である
Aksakal

@Aksakal彼らが密接に関連していることを考慮しているので、彼らが接続されていることは驚きではありません(申し訳ありませんが、あなたの回答は1度しか投票できません)。数えること以外にほとんど数学を必要としないかなり基本的な分析がいくつかの有用な結果をもたらす可能性があることを示すことは明るいと思われるので、私はできる限り最も基本的な方法で質問の最も文字通りの解釈に答えようとすることに決めました。
Glen_b-モニカを復元する

jalapic-run -up-and-downとruns-of-one-kindの特定のバージョンについて説明しているこのページを参照してください。これは、上下の実行に便利な通常の近似を提供し、区別を明確にするのにも役立ちます。
Glen_b-モニカを復活させる'11 / 11/24

1

データの中断やレベルシフトをチェックする構造変更と呼ばれるパッケージを使用できます。非季節性の時系列のレベルシフトを自動的に検出することにある程度成功しました。

あなたの「価値」を時系列データに変換しました。次のコードを使用して、レベルシフトまたは変更点またはブレークポイントをチェックしました。このパッケージには、構造破壊をテストするためのチョウテストを実行するチョウテストなどの優れた機能もあります。

require(strucchange)
value.ts <- ts(data[,2],frequency = 1, start = (1956))
bp.value <- breakpoints(value.ts ~ 1)
summary(bp.value)

以下は、breakpont関数からの要約です。

Breakpoints at observation number:

m = 1           36      
m = 2     16    31      
m = 3     16    36    46
m = 4     16 24 36    46
m = 5   8 16 24 36    46
m = 6   8 16 24 33 41 49

Corresponding to breakdates:

m = 1                  1991          
m = 2        1971      1986          
m = 3        1971      1991      2001
m = 4        1971 1979 1991      2001
m = 5   1963 1971 1979 1991      2001
m = 6   1963 1971 1979 1988 1996 2004

Fit:

m   0           1           2           3           4           5           6          
RSS   0.8599316   0.7865981   0.5843395   0.5742085   0.5578739   0.5559645   0.5772778
BIC -71.5402819 -68.5892480 -77.7080112 -70.6015129 -64.1544916 -56.2324540 -45.9296608

関数を見るとわかるように、BIC基準に基づいて以下のプロットに示すように、データで考えられるブレークを識別し、1971年と1986年に2つの構造的ブレークを選択しました。上記の出力にリストされているように、関数は他の代替ブレークポイントも提供しました。

ここに画像の説明を入力してください

これが役に立てば幸い


使用しているアプローチの問題は、暗黙的にパルスがなく、(おそらく)ARIMA構造もないと想定していることです。私の休憩は「基本的に」または1972年と1992年です。...あなたの休憩は1971年と1986年で、1989年の異常を無視しています。要約すると、分析はそれほど違いはなく、一時的な異常に対して堅牢です。
IrishStat 2014年

@IrishStatあなたは正しい。Autoboxは確かにパルスの修正を識別し、レベルシフトを正しく識別します。Rの構造変更パッケージで私が抱えていた問題の1つは、季節性以外の時系列でかなりうまく機能することです。季節性時系列では使用が非常に限られているか、役に立たないので、Autoboxは非常にうまく処理します。
予測家
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.