数据分析的协方差矩阵和相关矩阵的计算(第一种手动编程实现, 第二种导入库实现)
前言
数据分析的基础就是计算得出协方差矩阵和相关矩阵,然后进一步分析和计算
这次我举两个小例子,便于大家理解和体会
一、协方差矩阵和相关矩阵的手动编程实现
1.实现过程
代码如下(示例):
print('================正常的自己手动编写的算法程序==============')
print('.........上课例题,数据已经给定,只是显示方法的执行流程..............')
origin_list = [[1, 0, 1, 0], [1, 0, 1, 0], [0, 1, 0, 1], [1, 0, 0, 1]]
index_1 = 0
avg = [0, 0, 0, 0]
for li in origin_list:
for num in li:
avg[index_1] += num/len(li)
index_1 += 1
print('各个平均数: ', avg)
xiefangcha = [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]
i = -1
for li_1 in origin_list:
i += 1
j = -1
for li_2 in origin_list:
j += 1
for num_1, num_2 in zip(li_1, li_2):
xiefangcha[i][j] += (num_1 - avg[i])*(num_2 - avg[j])/3
print('协方差矩阵: ', xiefangcha)
xiangguanjuzheng = [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]
i = 0
for xie in xiefangcha:
j = 0
for xi in xie:
xiangguanjuzheng[i][j] = xi/((xiefangcha[i][i]**0.5)*(xiefangcha[j][j]**0.5))
j += 1
i += 1
print('相关矩阵: ', xiangguanjuzheng)
结果如下:
二、协方差矩阵和相关矩阵的导入库实现
1.实现过程
代码如下(示例):
import pandas as pd
import numpy as np
matric = [[1, 0, 1, 0], [1, 0, 1, 0], [0, 1, 0, 1], [1, 0, 0, 1]]
covariance_matrix = np.cov(matric)
print('============协方差矩阵============')
print(covariance_matrix)
df = pd.DataFrame({
'a': [1, 0, 1, 0],
'b': [1, 0, 1, 0],
'c': [0, 1, 0, 1],
'd': [1, 0, 0, 1]})
df_corr = df.corr()
print('\n============相关矩阵============')
print(df_corr)
实现结果如下:
总结
数据分析还是非常重要的,大家可以了解一下啊