相关系数通过时间

7次观看(最近30天)
Daniele Ferreti
Daniele Ferreti 2020年3月27日
回答: 彼得·珀金斯 2020年4月14日
因此,我很熟悉未来项目的相关系数。我有一些我想了解的目标:整个Corrcoef,然后随着时间的流逝而Corrcoef(这意味着随着数据的变化,看到“实时” Corrcoef)。
到目前为止,我将其按照我想要的工作进行了:
%%随机数和单输出率。系数。
rand_1 = randi([0 5],1,20);%20在0和5之间的随机数
rand_2 = randi([0 5],1,20);%20在0和5之间的随机数
rand_3 = randi([0 5],1,20);%20在0和5之间的随机数
r_1 = corrcoef(rand_1,rand_2);%corr。系数。1和2之间的计算#1
R_1 = R_1(2,1)% 实际价值
r_2 = corrcoef(rand_1,rand_3);%corr。系数。1和3之间的计算#2
R_2 = R_2(2,1)% 实际价值
r_3 = corrcoef(rand_2,rand_3);%corr。系数。2和3之间的计算#3
R_3 = R_3(2,1)% 实际价值
%(如果您对如何使这些^^^计算更简单有任何意见,我也非常感谢任何帮助)
x = [1:20];图的%x轴
数字
子图(3,2,[1,2])
情节(x,rand_1,'r',x,rand_2,'b'R_1的绘图%
标题(['随机1:在1和2之间,C.C。=',num2str(r_1),'')))
轴([1 20 -1 6])
子图(3,2,[3,4])
情节(x,rand_1,'r',x,rand_3,'G'R_2的绘图%
标题(['随机2:在1和3之间,C.C。=',num2str(r_2),'')))
轴([1 20 -1 6])
子图(3,2,[5,6])
情节(x,rand_2,'b',x,rand_3,'G'R_3的绘图%
标题(['随机3:在2和3之间,C.C。=',num2str(r_3),'')))
轴([1 20 -1 6])
现在,我想在时间序列上做类似的事情,但是我很难理解我要在哪里出错以及如何继续:
%%随机数和输出率。系数。随着时间的推移
L = 20;随机数样本的长度百分比
rand2_1 = randi([0 5],1,l);%l在0和5之间的随机数
rand2_2 = randi([0 5],1,l);%l在0和5之间的随机数
rand2_3 = randi([0 5],1,l);%l在0和5之间的随机数
k = 2*l;
r2_1 =零(2,k);r2_2 =零(2,k);r2_3 =零(2,k);%创建空间
为了t = 1:1:l%corr。系数。#4到1和2之间的时间
J = 2*T-1;
R2_1(1:2,J:J+1)= Corrcoef(rand2_1([t t+1]),rand2_2([t t t+1]));
结尾
我了解到,取决于给出的矩阵/数据的大小 Corrcoef 它将给出不同的大小矩阵作为答案(例如,初始示例代码的情况中的2x2),但我无法在第二部分中弄清楚这一点。也许我是从中错误地提取答案 Corrcoef ,或者也许我的矩阵操纵完全是错误的。
无论如何,任何帮助都将不胜感激!谢谢

接受的答案

Daniele Ferreti
Daniele Ferreti 2020年3月30日
编辑:Daniele Ferreti 2020年3月30日
%%随机数和输出率。系数。随着时间的推移
L = 20;随机数样本的长度百分比
F = 0;%最低随机数
g = 5;%最大随机数
rand2_1 = randi([f g],1,l);f&g之间的%l随机数
rand2_2 = randi([f g],1,l);
rand2_3 = randi([f g],1,l);
r2_1 =零(1,l)
为了t = 1:1:l-2
a = corrcoef(rand2_1([t t t+1 t+2]),rand2_2([t t t+1 t+2]));%corr。系数。1和2之间的计算(由3的夫妇)
b = a(2,1);实际想要的价值%
r2_1(t)= b;%编译用于绘图
结尾

更多答案(2)

Navya Seelam
Navya Seelam 2020年3月30日
编辑:Navya Seelam 2020年3月30日
您正在尝试访问 rand2_1([20 21]) 在for循环中 t = 20 但是大小 rand2_1 只是 1x20

彼得·珀金斯
彼得·珀金斯 2020年4月14日
“%(如果您对如何使这些^^^计算更简单,我也将非常感谢任何帮助)”
这是否更简单?
>> rand_123 = randi([0 5],20,3);
>> r = corrcoef(rand_123);
>> r12 = r(1,2),r13 = r(1,3),r23 = r(2,3)
R12 =
-0.3379
R13 =
-0.1516
R23 =
-0.033438
另外,如果您可以访问计量经济学TBX,则可以查看Autocorr。或Xcorr,尽管要当心:这是在信号处理的术语中写的,因此您必须选择正确的参数才能获取所需的内容。
STAT和MACHINELEARNIGN中还具有相关性,它不仅是线性(Pearson)相关性的,而且还等级(Spearmand and Kendal)相关性。

社区寻宝

在Matlab Central中找到宝藏,发现社区如何为您提供帮助!

开始狩猎!