2013-04-30 3 views
1

나는 매우 큰 데이터가 있습니다. 여기에 게시하기에는 너무 큽니다. 그래서이 질문을하는 법을 모른다. 나는 matlab를 사용하고있다. 두 데이터 변수의 상관 관계를 찾는, matlab (개념)

enter image description here

enter image description here

mat = [time_days temperature, change_in_mm] % 

나는 시간에 대한 온도 & change_in_mm 사이의 상호 상관을 찾고 싶어요.

기본 아이디어는 주파수 도메인에서 수행하는 것입니다.

f_data = fft(t_data, N) 
  1. 내가 선택해야하는 방법 N ?
  2. 온도 & change_in_mm을 주파수 도메인으로 변환해야합니까?

temperaturechange_in_mm 사이의 관계가 있어야합니다. 겨울과 여름뿐만 아니라 낮과 밤에도 temperaturechange_in_mm 사이의 상관 관계를보고 싶습니다.

내 다음 단계는 무엇이되어야합니까?

% ---------------------- 수정 ---------------------- ------------- %

나는 이미 시도했지만 그래프의 의미를 이해할 수 없다.

enter image description here

답변

2

R=xcorr(temperature, change_in_mm); 
N = length(temperature); %// or N = length(change_in_mm) 
R = R(N + 1:end); 

figure; 
plot(R,'r') 
당신이 Signal Processing Toolbox 설치 한 경우, 자신에게 몇 가지 문제를 저장하고 xcorr를 사용

R = xcorr(temperature, change_in_mm); 

Rlength(temperature) + length(change_in_mm) - 1입니다 결과 벡터의 길이. 아마도 당신은 단지 양의 시차에 관심이있을 수 있습니다, 그래서 당신은 출력을 트리밍 고려해야 만 후반을 유지해야합니다

R = R((length(temperature) + length(change_in_mm))/2:end); 

또는 경우에 그들은 둘 다 샘플 같은 수의 포함 :

N = length(temperature); %// or N = length(change_in_mm) 
R = R(N + 1:end); 
+0

을 @ Eithan, 편집을 참조하십시오. 그러나 나는 또한 주파수 영역에서 원한다. – Shahgee

관련 문제