简体   繁体   English

python pandas从价格数据帧创建相关矩阵

[英]python pandas create correlation matrix from price dataframe

I have a dataframe populated with stock price returns (indexed by Date). 我有一个填充有股票价格回报(按日期编制索引)的数据框。 Could someone let me know how I can get a correlation matrix from this dataframe. 有人可以让我知道如何从该数据框中获得相关矩阵。

The dataframe would look like: 数据框如下所示:

            BBG.XSTO    BBG.XLON    BBG.XETR    BBG.XHEL
Date
06/02/2014  0.001418    0.00708     0.019437    0.025848
07/02/2014  0.021329    0.016221    0.006784    0.032683
10/02/2014  0.005299    0.005177    0.007391    0.005111
11/02/2014  -0.006497   0.021656    -0.004109   0.001855
12/02/2014  -0.003844   0.019885    -0.002457   0.004617
13/02/2014  -0.004795   -0.001831   -0.010602   0.00917
14/02/2014  0.003276    0.010801    -0.000341   0.009992
17/02/2014  0.00206     0.003307    -0.002336   0.009443
18/02/2014  -0.010467   0.004102    0.046172    0.002236
19/02/2014  0.002929    0.003037    -0.009944   0.015511
20/02/2014  -0.003969   -0.015961   0.015342    0.003952
21/02/2014  0.004776    -0.001107   0.010403    0.005243
24/02/2014  0.015125    0.025254    0.018505    0.011263
25/02/2014  -0.001546   0.000742    0.004307    0.019623
26/02/2014  -0.000478   -0.000677   0.006721    0.003797
27/02/2014  -0.009898   0.002869    0.038103    0.010052
28/02/2014  0.005288    0.004927    -0.01254    -0.005852
03/03/2014  -0.035165   -0.023916   -0.022374   -0.01563
04/03/2014  0.020213    0.017346    0.016266    0.040465
05/03/2014  0.004067    0.002742    0.010699    0.005709
06/03/2014  -0.000648   -0.012987   0.013513    -0.008984
07/03/2014  -0.008855   -0.015162   -0.003511   -0.019051
10/03/2014  0.003684    0.002893    0.023136    0.004172
11/03/2014  -0.003214   0.020036    -0.013234   -0.004588
12/03/2014  -0.005376   -0.015244   -0.015922   -0.002511
13/03/2014  -0.016978   0.000689    -0.022335   -0.005889

and hopefully the correlation matrix would look like: 希望相关矩阵如下所示:

            BBG.XSTO    BBG.XLON    BBG.XETR    BBG.XHEL
BBG.XSTO    1           0.548504179 0.315191057 0.69486495
BBG.XLON    0.548504179 1           0.314246645 0.56176159
BBG.XETR    0.315191057 0.314246645 1           0.414599864
BBG.XHEL    0.69486495  0.56176159  0.414599864 1

Thanks 谢谢

Assuming your dataframe is named df . 假设您的数据框名为df

df.corr()
Out[106]: 
          BBG.XSTO  BBG.XLON  BBG.XETR  BBG.XHEL
BBG.XSTO    1.0000    0.5801    0.3057    0.7185
BBG.XLON    0.5801    1.0000    0.1709    0.5366
BBG.XETR    0.3057    0.1709    1.0000    0.3340
BBG.XHEL    0.7185    0.5366    0.3340    1.0000

标准的熊猫函数DataFrame.corr(method='pearson', min_periods=1)在这种情况下应该可以使用{'pearson','kendall','spearman'}中的方法很好地工作,'pearson'是您的标准关联描述。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM