计算表中各列之间的相关性

mHelpMe

我正在尝试创建一个存储过程,该存储过程计算临时表中某些列之间的相关性。

我有一个查询,它会产生一个如下所示的临时表,

 Date         USA     JAPAN    FRANCE   UK 
 2018-01-01   5       3.2      1.6      2.8
 2018-01-02   6.8     8.2      0.9      3.5
 2018-01-03   4.3     6.2      3.3      2.1
 2018-01-04   3.9     6.2      4.5      7.8
 ...
 2018-01-31   7.6     5.1      4.7      5.1

我想计算所有列之间的相关性。下面的查询正是这样做的。

SELECT 
(Avg(SeriesA * SeriesB) - (Avg(SeriesA) * Avg(SeriesB))) / (StDevP(SeriesA) * StDevP(SeriesB))  
FROM myTempTbl

但是,我的临时表中的列数可能会更改,即可能添加或删除了另一个国家等

计算所有列之间的相关性以输出如下所示的最佳方法是什么?

我想要的结果如下所示(已建立相关性),

    Country1  Country2   Correlation
    USA       JAPAN      0.1
    USA       FRANCE     0.1
    USA       UK         0.1
    JAPAN     FRANCE     0.1
    JAPAN     UK         0.1
    FRANCE    UK         0.1
拉努

我怀疑这是您要追求的结果,但是,我得到的结果与您的结果不匹配(我得到0每一行的相关性),这可能是因为您的样本数据意味着更多的数据(您尚未提供,因此,您问题中的预期结果不能代表所提供的样本数据。但是,这至少应该将您推向正确的方向:

CREATE TABLE CountryData (DataDate date,
                          Country varchar(15),
                          SomeDecimal decimal(2,1)); --No idea what this represents

WITH VTE AS(
    SELECT *
    FROM (VALUES('20180101',5  ,3.2,1.6,2.8),
                ('20180102',6.8,8.2,0.9,3.5),
                ('20180103',4.3,6.2,3.3,2.1),
                ('20180104',3.9,6.2,4.5,7.8),
                ('20180131',7.6,5.1,4.7,5.1)) V([Date],USA,JAPAN,FRANCE,UK))
--Pivot the data. This is not dynamic, I am simply showing you what you need to data to look like.
--It was far quicker for me to take your existing data and pivot it, than transcribe it all in Normal Form
INSERT INTO CountryData
SELECT V.[Date],
       C.Country,
       CASE C.Country WHEN 'USA' THEN USA
                      WHEN 'JAPAN' THEN JAPAN
                      WHEN 'FRANCE' THEN FRANCE
                      WHEN 'UK' THEN UK
       END AS SomeDecimal
FROM VTE V
     CROSS APPLY (VALUES('USA'),('JAPAN'),('FRANCE'),('UK')) C(Country);
GO
--How your data should look
SELECT *
FROM CountryData;
GO
--And now the (much simpler) non-dynamic solution
SELECT CDa.Country AS Country1,
       CDb.Country As Country2,
       (Avg(CDa.SomeDecimal * CDb.SomeDecimal) - (Avg(CDa.SomeDecimal) * Avg(CDb.SomeDecimal))) / (StDevP(CDa.SomeDecimal) * StDevP(CDb.SomeDecimal)) AS Correlation
FROM CountryData CDa
     JOIN CountryData CDb ON CDa.Country != CDb.Country
GROUP BY CDa.Country, CDb.Country
ORDER BY CDa.Country, CDb.Country;

GO
DROP TABLE CountryData;

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

根据列名计算两列之间的相关性

来自分类Dev

计算 R 数据框列之间的相关性

来自分类Dev

如何计算rollapply中几列和一列之间的滚动相关性?

来自分类Dev

计算矩阵中每对行的自相关和互相关之间的相关性

来自分类Dev

python中数组之间的相关性

来自分类Dev

计算一列与其他列的选择之间的相关性而无循环

来自分类Dev

计算一列与其他列的选择之间的相关性而无循环

来自分类Dev

计算具有NA的线性回归残差与R中的自变量之间的相关性

来自分类Dev

如何使用Postgresql计算不同组之间的相关性

来自分类Dev

如何计算XTS中行之间的滚动相关性?

来自分类Dev

如何根据一个表中两列之间的相关性以及R中另一表中的结果来过滤结果?

来自分类Dev

如何计算R中所有列之间的相关性并检测高度相关的变量

来自分类Dev

for循环可在2个不同的数据框中查找相同变量(列)之间的相关性

来自分类Dev

计算单独的相关性,按列值分组

来自分类Dev

迭代计算具有列相关性的行?

来自分类Dev

不同数据框的列之间的相关性

来自分类Dev

计算R中函数生成的数据的相关性

来自分类Dev

在R中的数据帧中计算相关性

来自分类Dev

在MQL4中如何计算Pearson的相关性?

来自分类Dev

R data.table中各组之间的相关性

来自分类Dev

R中因素之间的Spearman等级相关性

来自分类Dev

R中仅特定变量之间的相关性

来自分类Dev

如何维护mongodb中数组元素之间的相关性?

来自分类Dev

带有Stata中相关性的紧凑表

来自分类Dev

R-比较计算的相关性

来自分类Dev

在Python中计算Pearson相关性

来自分类Dev

R-比较计算的相关性

来自分类Dev

Apache Spark-计算相关性

来自分类Dev

在 numpy 中计算相关性

Related 相关文章

  1. 1

    根据列名计算两列之间的相关性

  2. 2

    计算 R 数据框列之间的相关性

  3. 3

    如何计算rollapply中几列和一列之间的滚动相关性?

  4. 4

    计算矩阵中每对行的自相关和互相关之间的相关性

  5. 5

    python中数组之间的相关性

  6. 6

    计算一列与其他列的选择之间的相关性而无循环

  7. 7

    计算一列与其他列的选择之间的相关性而无循环

  8. 8

    计算具有NA的线性回归残差与R中的自变量之间的相关性

  9. 9

    如何使用Postgresql计算不同组之间的相关性

  10. 10

    如何计算XTS中行之间的滚动相关性?

  11. 11

    如何根据一个表中两列之间的相关性以及R中另一表中的结果来过滤结果?

  12. 12

    如何计算R中所有列之间的相关性并检测高度相关的变量

  13. 13

    for循环可在2个不同的数据框中查找相同变量(列)之间的相关性

  14. 14

    计算单独的相关性,按列值分组

  15. 15

    迭代计算具有列相关性的行?

  16. 16

    不同数据框的列之间的相关性

  17. 17

    计算R中函数生成的数据的相关性

  18. 18

    在R中的数据帧中计算相关性

  19. 19

    在MQL4中如何计算Pearson的相关性?

  20. 20

    R data.table中各组之间的相关性

  21. 21

    R中因素之间的Spearman等级相关性

  22. 22

    R中仅特定变量之间的相关性

  23. 23

    如何维护mongodb中数组元素之间的相关性?

  24. 24

    带有Stata中相关性的紧凑表

  25. 25

    R-比较计算的相关性

  26. 26

    在Python中计算Pearson相关性

  27. 27

    R-比较计算的相关性

  28. 28

    Apache Spark-计算相关性

  29. 29

    在 numpy 中计算相关性

热门标签

归档