Skip to content

rk0uhey/Autocorrelation-Analysis

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Autocorrelation-Analysis

時系列データに対して、自己相関係数を計算する。

実行環境

  • Python Version

    • Python 3.6.3 :: Anaconda, Inc.
  • Library Version

    • requirements.txtを参照のこと

pipをインストールしている場合は、

$ pip install -r requirements.txt

実行上の注意事項

実行方法

プログラムの実行は、以下のコマンドで行う。
実行する際には、プログラムまでのパスに注意する。

$ python3 main.py

入力

ファイルパス

分析したいファイルへのパスの入力では、絶対パス・相対パス、どちらでも可能。

絶対パス: /Users/username/Autocorrelation-Analysis/data/sample.txt
相対パス: ./data/sample.txt

複数ファイルの入力をしたい場合は、以下のように入力する。
拡張子をしていすれば、その拡張子のファイルのみ読み込む。指定がない場合は、ディレクトリ下のファイルをすべて読み込む。
こちらも絶対パス・相対パス、どちらでも可能。

絶対パス: /Users/username/Autocorrelation-Analysis/data/*.txt
相対パス: ./data/*.txt

計算モード

計算モードの選択では、ずらしかたの指定ができる。

モード1

データ数の50%~100%分だけずらしたい場合は、1を入力する。このモードでは、入力データの前半X%を使用して、自己相関の計算をする。
データ数3000行のデータを入力した場合、前半50%(1500行)のデータを1500回ずらす、前半60%(1800行)のデータを1800回ずらす、...、前半100%(3000行)のデータを3000回ずらすことになる。

モード2

任意の回数(X回)をずらしたい場合は、2を入力し、ずらしたい回数を入力する。このモードでは、入力データのうち、前半X行を使用して、自己相関の計算をする。
データ数3000行のデータを入力し、Xを300回とした場合、前半300行のデータを300回ずらすことになる。

モード3

連続して、任意の回数をずらしたい場合は、3を入力し、1回目にずらしたい回数、2回目...、N回目にずらしたい回数を入力する(デフォルトでN=3)。また、ずらす回数は「1回目≧2回目≧3回目」となるようにする。このモードでは、入力データすべてを使用して、自己相関の計算をする。
データ数3000行のデータを入力し、ずらす回数を300回・200回・100回とした場合、計算結果は以下のようになる。

  • A. データ全体を300回ずらしたもの (出力は前半の300行)
  • B. Aの結果全体を200回ずらしたもの (出力は前半の200行)
  • C. Bの結果全体を100回ずらしたもの (出力は前半の100行)
モード4

データの水増しと自己相関係数の計算を並行して行いたい場合は、4を入力する。処理は、以下の順番で行う。

  • ずらす回数の入力→自己相関の計算
  • →水増し区間の入力→前回の計算結果を使用して、データの水増し→ずらす回数の入力→自己相関の計算 * N回 (デフォルトでN=2)
モード5

データの水増しのみ行いたい場合は、5を入力し、水増しの対象となる区間(開始時間、終了時間)と何個のデータに水増しするか入力する。 水増しでは、元データより対象の区間を切り取り、任意の個数になるように対象区間をコピーし、つなげる。

モード6

任意の回数(X回)をずらしたい場合は、6を入力し、ずらしたい回数を入力する。このモードでは、入力データのうち、すべての行を使用して、自己相関の計算をする。

区切り文字

またモード3~6では、データの区切り文字の選択ができる。
区切り文字がスペースの場合は、1を入力し、区切り文字がタブの場合は、2を入力する。

出力

出力は、out/[各mode]/ディレクトリに行う。
出力ディレクトリ名は、プログラムの実行時間になる。

モード1

1つの入力ファイルにつき、12個のファイルが出力される。

  • データ数の50%~100%だけずらしたファイル(6個) × インデックスの有無(2個)

モード2

1つの入力ファイルにつき、2個のファイルが出力される。

  • インデックスの有無(2個)

モード3

1つの入力ファイルにつき、2*N個のファイルが出力される。

  • インデックスの有無(2個) × 連続して計算した回数(N)

モード4

1つの入力ファイルにつき、最終結果ディレクトリに8個のファイルが、計算途中結果ディレクトリ(out/mode4/midway_cal/)に5個のファイル出力される。

  • 最終結果ディレクトリ
    • ①のインデックスの有無(2個)
    • (②のインデックスの有無(2個) + 水増しの設定ファイル) × 連続して計算した回数(N)
  • 計算途中結果ディレクトリ
    • ①のインデックスの有無(2個)
    • (②のインデックスの有無(2個) + 水増しの設定ファイル) × 連続して計算した回数(N-1)

モード5

1つの入力ファイルにつき、3個のファイルが出力される。

  • 水増し結果(インデックスの有無(2個)) + 水増しの設定ファイル

モード6

1つの入力ファイルにつき、2個のファイルが出力される。

  • インデックスの有無(2個)

License

"Autocorrelation-Analysis" is under MIT license.

About

自己相関を計算してくれるあれ

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages