我正在尝试使用Orange3距离小部件在几列上计算Pearson相关性,但是结果与我在R中得到的结果完全不同。
我正在运行的R命令是
head(DF_COMBRETURNS,30)
returns1 returns2 returns3
1 0.051533110 0.08991458 0.05758710
2 0.025753284 0.10480611 0.07194245
3 -0.057929969 0.18695782 0.01437815
4 -0.070844336 0.09703665 0.02875216
5 -0.038669760 -0.01491424 0.01437195
6 0.000000000 -0.09695704 -0.01436988
7 0.045132173 -0.04479283 0.00000000
8 0.012889089 0.02987527 -0.02874389
9 -0.012887428 -0.05226611 0.02875216
10 0.000000000 0.08964590 0.04311584
11 -0.032222723 0.14927601 0.02873150
12 -0.038679732 0.02981070 0.02872325
13 0.000000000 0.09685591 0.05743001
14 0.012898233 -0.06698921 -0.07174631
15 0.000000000 0.00000000 0.00000000
16 -0.006448285 0.07448235 0.05743825
17 -0.038692204 0.02232807 0.00000000
18 -0.038707180 -0.04464618 -0.04305396
19 -0.064536947 -0.12655401 -0.12921752
20 -0.012915725 -0.01490757 0.02875216
21 0.025834787 0.02981959 0.04311584
22 -0.025828114 0.02981070 0.08619451
23 -0.012917393 0.00000000 0.04306014
24 0.019378593 -0.06705409 0.00000000
25 0.000000000 -0.02236636 0.02869440
26 0.012916559 0.01491424 0.02868617
27 0.012914891 0.15657620 0.12905076
28 0.000000000 0.02977741 0.01432049
29 -0.012913223 -0.05209496 0.01431844
30 0.000000000 -0.03723008 -0.04294918
cor(DF_COMBRETURNS[,c(5,8,11)])
returns1 returns2 returns3
returns1 1.00000000 -0.03619446 0.2682558
returns2 -0.03619446 1.00000000 0.6724748
returns3 0.26825585 0.67247477 1.0000000
但是当尝试在Orange3距离小部件中计算相同的数据时,结果却截然不同。当阅读有关小部件的文档时,似乎Orange总是对数据进行归一化,但是我不知道这是否是差异的原因。我在做什么错了?
答案 0 :(得分:1)
Pearson相关距离定义为(1-cor)/ 2
使用
(1 - cor(DF_COMBRETURNS[,c(5,8,11)])) / 2
比较结果