Python3Numpy——相关性协方差应用
2018-06-22 00:59:47来源:未知 阅读 ()
基本理论
Correlation
Are there correlations between variables?
Correlation measures the strength of the linear association between two numerical variables. For example, you could imagine that for children, age correlates with height: the older the child, the taller he or she is. You could reasonably expect to get a straight line or upward curve with a positive slope when you plot age against height.
定义
生物是一个有机的整体,其各个组成部分都是相关联的,我们可以通过研究一个生物的牙齿、爪子或者骨骼来复原这个生物。
协方差:
定义:
对于离散型随机变量:
对于连续性随机变量:
协方差化简:
当X与Y独立时, 有Cov(X, Y) = 0
协方差基本性质:
随机变量和的方差与协方差的关系:
D(X +/- Y) = D(X) + D(Y) +/- 2Cov(X, Y)
协方差的有界性
相关系数:
定义
Python3NumPy关于相关性协方差阐述
导入相关模块
import numpy as np from matplotlib.pyplot import plot from matplotlib.pyplot import show
import matplotlib.pyplot as plt
导入数据
bhp = np.loadtxt('BHP.csv', delimiter=',', usecols=(6,), unpack=True)
数据BHP.csv文件如下:
BHP |
11-02-2011 |
93.11 |
94.26 |
92.9 |
93.72 |
1741900 |
|
BHP |
14-02-2011 |
94.57 |
96.23 |
94.39 |
95.64 |
2620800 |
|
BHP |
15-02-2011 |
94.45 |
95.47 |
93.91 |
94.56 |
2461300 |
|
BHP |
16-02-2011 |
92.67 |
93.58 |
92.56 |
93.3 |
3270900 |
|
BHP |
17-02-2011 |
92.65 |
93.98 |
92.58 |
93.93 |
2650200 |
|
BHP |
18-02-2011 |
92.34 |
93 |
92 |
92.39 |
4667300 |
|
BHP |
22-02-2011 |
93.14 |
93.98 |
91.75 |
92.11 |
5359800 |
|
BHP |
23-02-2011 |
91.93 |
92.46 |
91.05 |
92.36 |
7768400 |
|
BHP |
24-02-2011 |
92.42 |
92.71 |
90.93 |
91.76 |
4799100 |
|
BHP |
25-02-2011 |
93.48 |
94.04 |
92.44 |
93.91 |
3448300 |
|
BHP |
28-02-2011 |
94.81 |
95.11 |
94.1 |
94.6 |
4719800 |
|
BHP |
01-03-2011 |
95.05 |
95.2 |
93.13 |
93.27 |
3898900 |
|
BHP |
02-03-2011 |
93.89 |
94.89 |
93.54 |
94.43 |
3727700 |
|
BHP |
03-03-2011 |
95.9 |
96.11 |
95.18 |
96.02 |
3379400 |
|
BHP |
04-03-2011 |
96.12 |
96.44 |
95.08 |
95.76 |
2463900 |
|
BHP |
07-03-2011 |
96.51 |
96.66 |
94.03 |
94.47 |
3590900 |
|
BHP |
08-03-2011 |
93.72 |
94.47 |
92.9 |
94.34 |
3805000 |
|
BHP |
09-03-2011 |
92.94 |
93.13 |
91.86 |
92.22 |
3271700 |
|
BHP |
10-03-2011 |
89 |
89.17 |
87.93 |
88.31 |
5507800 |
|
BHP |
11-03-2011 |
88.24 |
89.8 |
88.16 |
89.59 |
2996800 |
|
BHP |
14-03-2011 |
88.17 |
89.06 |
87.82 |
89.02 |
3434800 |
|
BHP |
15-03-2011 |
84.58 |
87.32 |
84.35 |
86.95 |
5008300 |
|
BHP |
16-03-2011 |
86.31 |
87.28 |
83.85 |
84.88 |
7809799 |
|
BHP |
17-03-2011 |
87.32 |
88.29 |
86.89 |
87.38 |
3947100 |
|
BHP |
18-03-2011 |
89.53 |
89.58 |
88.05 |
88.56 |
3809700 |
|
BHP |
21-03-2011 |
90.13 |
90.16 |
88.88 |
89.59 |
3098200 |
|
BHP |
22-03-2011 |
89.5 |
89.59 |
88.42 |
88.71 |
3500200 |
|
BHP |
23-03-2011 |
89.57 |
90.32 |
88.85 |
90.02 |
4285600 |
|
BHP |
24-03-2011 |
90.86 |
91.35 |
89.7 |
91.26 |
3918800 |
|
BHP |
25-03-2011 |
90.42 |
91.09 |
90.07 |
90.67 |
3632200 |
vale = np.loadtxt('VALE.csv', delimiter=',', usecols=(6,), unpack=True)
数据VALE.csv文件如下:
VALE |
11-02-2011 |
|
33.88 |
34.54 |
33.63 |
34.37 |
18433500 |
VALE |
14-02-2011 |
|
34.53 |
35.29 |
34.52 |
35.13 |
20780700 |
VALE |
15-02-2011 |
|
34.89 |
35.31 |
34.82 |
35.14 |
17756700 |
VALE |
16-02-2011 |
|
35.16 |
35.4 |
34.81 |
35.31 |
16792800 |
VALE |
17-02-2011 |
|
35.18 |
35.6 |
35.04 |
35.57 |
24088300 |
VALE |
18-02-2011 |
|
35.31 |
35.37 |
34.89 |
35.03 |
21286600 |
VALE |
22-02-2011 |
|
33.94 |
34.57 |
33.36 |
33.44 |
28364700 |
VALE |
23-02-2011 |
|
33.43 |
34.12 |
33.1 |
33.94 |
22559300 |
VALE |
24-02-2011 |
|
34.3 |
34.3 |
33.56 |
34.21 |
20591900 |
VALE |
25-02-2011 |
|
34.67 |
34.95 |
34.05 |
34.27 |
20151500 |
VALE |
28-02-2011 |
|
34.34 |
34.51 |
33.7 |
34.23 |
16126000 |
VALE |
01-03-2011 |
|
34.39 |
34.44 |
33.68 |
33.76 |
17282400 |
VALE |
02-03-2011 |
|
33.61 |
34.5 |
33.57 |
34.32 |
15870900 |
VALE |
03-03-2011 |
|
34.77 |
34.89 |
34.53 |
34.87 |
14648200 |
VALE |
04-03-2011 |
|
34.67 |
34.83 |
34.04 |
34.5 |
15330800 |
VALE |
07-03-2011 |
|
34.43 |
34.53 |
32.97 |
33.23 |
25040500 |
VALE |
08-03-2011 |
|
33.22 |
33.7 |
32.55 |
33.29 |
17093000 |
VALE |
09-03-2011 |
|
33.23 |
33.44 |
32.68 |
32.88 |
20026300 |
VALE |
10-03-2011 |
|
32.17 |
32.4 |
31.68 |
31.91 |
30803900 |
VALE |
11-03-2011 |
|
31.53 |
32.42 |
31.49 |
32.17 |
24429900 |
VALE |
14-03-2011 |
|
32.03 |
32.45 |
31.74 |
32.44 |
15525500 |
VALE |
15-03-2011 |
|
30.99 |
31.93 |
30.79 |
31.91 |
24767700 |
VALE |
16-03-2011 |
|
31.99 |
32.03 |
30.68 |
31.04 |
30394153 |
VALE |
17-03-2011 |
|
31.44 |
31.82 |
31.32 |
31.51 |
24035000 |
VALE |
18-03-2011 |
|
32.17 |
32.39 |
31.98 |
32.14 |
19740600 |
VALE |
21-03-2011 |
|
32.81 |
32.85 |
32.26 |
32.42 |
18923700 |
VALE |
22-03-2011 |
|
32.13 |
32.32 |
31.74 |
32.25 |
18934200 |
VALE |
23-03-2011 |
|
32.39 |
32.91 |
32.22 |
32.7 |
18359900 |
VALE |
24-03-2011 |
|
32.82 |
32.94 |
32.12 |
32.36 |
25894100 |
VALE |
25-03-2011 |
|
32.26 |
32.74 |
31.93 |
32.34 |
16688900 |
数据处理:
bhp_returns = np.diff(bhp) / bhp[:-1]
vale_returns = np.diff(vale) / vale[:-1]
计算bhp_returns和vale_returns的协方差
covariance = np.cov(bhp_returns, vale_returns)
print(covariance)
结果:
[[0.00028179 0.00019766] [0.00019766 0.00030123]]
取协方差对角线上的元素:
print(covariance.diagonal())
结果:
[0.00028179 0.00030123]
打印协方差矩阵的迹:
print(covariance.trace())
结果:
0.000583023549920278
计算bhp_returns和vale_returns的相关系数:
print(covariance/((bhp_returns.std()*vale_returns.std())))
结果:
[[1.00173366 0.70264666] [0.70264666 1.0708476 ]]
print(np.corrcoef(bhp_returns, vale_returns))
结果:
[[1. 0.67841747] [0.67841747 1. ]]
绘bhp_returns和vale_returns的图像:
t = np.arange(len(bhp_returns)) plot(t, bhp_returns, lw = 1) plot(t, vale_returns,lw =2) show()
结果:
相关知识点理解
np.diff(a, n=1, axis=-1)
import numpy as np A = np.arange(2 , 14).reshape((3 , 4)) A[1 , 1] = 8 print('A:' , A) # A: [[ 2 3 4 5] # [ 6 8 8 9] # [10 11 12 13]] print(np.diff(A)) # [[1 1 1] # [2 0 1] # [1 1 1]]
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- Python3NumPy——ndarray对象 2018-06-18
- Python3NumPy——数组(2)之数学空间与NumPy空间 2018-06-18
- Python3NumPy——数组(1)之创建 2018-06-18
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash