相関を調べたい

조회 수: 6 (최근 30일)
Sato Ren
Sato Ren 2021년 11월 4일
댓글: Sato Ren 2021년 11월 26일
今、研究でデータの相関を調べています。
自分が使っている関数は”corrcoef”です。しかしながら、先行研究では、wavelet解析を行ってるため、waveletを使用して、相関を調べたいです。
調べたところ、”corrcoef”は短い時間においての相関を調べるにはあまり向いていないと記載されていました。時間は、短い時間において、相関を見るにはどのようにするのが最も良い選択でしょうか。
waveletで、相関を見ることは可能なのか、他の関数だと何がおすすめなのか、教えてほしいです。

채택된 답변

Shunichi Kusano
Shunichi Kusano 2021년 11월 5일
waveletを使った相関ということですので、こちらの例が当てはまるかと思います。日本語訳がわかりにくいですがコヒーレンス=相関と思ってもらって大丈夫です。
wavelet解析では局所的な周波数応答を捉えることが可能になるので、短い時間での相関を見るのにも適しています。
  댓글 수: 5
Shunichi Kusano
Shunichi Kusano 2021년 11월 17일
すみません、ライセンスの問題でAbstractくらいしか表示できませんでした。ライセンスの問題なので当該図のキャプチャを添付してもらうのもあまり良くないと思います。類似の図でWebで誰でも見れるものをみつけて貼付いただくか、どのような図なのか(横軸が何で縦軸が何、とか)を説明していただければ、何か言えることもあるかもしれませんが…。
Sato Ren
Sato Ren 2021년 11월 17일
パソコンでgoogle chromeを用いて見ると、閲覧することが可能かと思います。無料でオープンアクセスできるものなので。
縦軸はcoherence、横軸は時間で、グラフとなっております。各時間でコヒーレンスがどれくらいになるかわかります。また下記のURLでいう図2です。
くさの様が先ほど添付してくださったwavelet coherenceの図から、上記のグラフにしたいと考えております。

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Shunichi Kusano
Shunichi Kusano 2021년 11월 17일
時間ごとのコヒーレンスをプロットするということなので先のコメントで述べた通りかと思います。下記が例となります。
t = 0:0.001:2;
x = cos(2*pi*10*t).*(t>=0.5 & t<1.1)+...
cos(2*pi*50*t).*(t>= 0.2 & t< 1.4)+0.25*randn(size(t));
y = sin(2*pi*10*t).*(t>=0.6 & t<1.2)+...
sin(2*pi*50*t).*(t>= 0.4 & t<1.6)+ 0.35*randn(size(t));
wcoh = wcoherence(x,y,1000);
c = max(wcoh,[],1); % 時間ごとの最大の相関値
plot(t,c);
信頼区間みたいなものがどのように出ているかわかりかねますが、表示であればarea関数が使えそうです。
https://www.mathworks.com/help/matlab/ref/area.html
  댓글 수: 1
Sato Ren
Sato Ren 2021년 11월 26일
ご回答ありがとうございます。
wavelet coherenceの図での→の意味は何を示しているんでしょうか。
下記のURLでは、位相の向きと書かれていますが、具体的に教えていただくことは可能でしょうか。

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 信号解析에 대해 자세히 알아보기

태그

제품


릴리스

R2021b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!