1

我有一个非常大的数据。它太大了,不能在这里发布。所以真的不知道怎么问这个问题?我正在使用matlab。

mat = [time_days temperature, change_in_mm] %

在此处输入图像描述

在此处输入图像描述

我想找到温度和 change_in_mm 之间相对于时间的互相关。

基本思想是在频域中进行。

f_data = fft(t_data, N)
  1. 我应该如何选择N
  2. 我应该将温度和 change_in_mm 都转换为频域吗?

temperature和之间应该有关系change_in_mm。我想看看冬季和夏季之间以及白天和黑夜之间的相关temperaturechange_in_mm

我的下一步应该是什么?任何机构都可以在这方面指导我。

%----------------------已编辑-------------- ---------%

我已经尝试过了,但无法理解图形的含义。

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

figure;
plot(R,'r')

在此处输入图像描述

4

1 回答 1

2

如果您安装了信号处理工具箱,请省去一些麻烦并使用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);
于 2013-04-30T18:37:25.393 回答