gpt4 book ai didi

numpy中计算相关系数的np.corrcoef

转载 作者:我是一只小鸟 更新时间:2023-08-31 07:39:26 35 4
gpt4 key购买 nike

np.corrcoef 的作用

计算 Pearson 乘积矩相关系数。它可以用来分析给定数据集中各个变量之间的线性相关程度,返回一个相关系数矩阵,相关系数矩阵中的值介于 -1 到 1 之间,包括 -1 和 1。这些值表明了变量之间的线性相关性及其方向。具体来说,正值接近 1 表示正向线性相关,负值接近 -1 表示负向线性相关,而值接近 0 则表示无线性相关性.

np.corrcoef 常用实例

计算二维矩阵的矩阵的相关系数,其中一个维度表示变量 variable 还有一个维度表示 observation 表示观测值,default是 row 表示 variable , column 表示 observation 其实也比较好理解举个例子 矩阵 [[1,2,3], [4,5,6], [7,8,9]] , [1,2,3] , [4,5,6] , [7,8,9] 表示三个随机变量而这三个随机变量本身也是一个向量,该向量表示该随机标量的观测值即 observatin 。

1. 计算矩阵的皮尔逊系数(不带其他参数的)

使用 np.corrcoef(data) , data 是一个矩阵,使用默认的 row 表示 variable , column 表示 observation 。

                        
                          import numpy as np 

rng = np.random.default_rng(10)
data = rng.random((3,4))
print("below is data:")
print(data)
res = np.corrcoef(data)
print("------------------------------------------------")
print("below is the res of np.corrcoef(data):")
print(res)

                        
                      

结果如下图 。

2. rowvar 设置为 false 来改变默认计算规则来

rowvar 设置为 false 后, row 表示 observation , column 表示 variable 。

                        
                          import numpy as np 

rng = np.random.default_rng(10)
data = rng.random((3,4))
print("below is data:")
print(data)
res = np.corrcoef(data, rowvar=False)
print("------------------------------------------------")
print("below is the res of np.corrcoef(data):")
print(res)

                        
                      

结果如下图 。

3. np.corrcoef(data1, data2)

这个其实等效于将data1跟data2在第一个维度上结合后计算皮尔逊相关系数的结果 。

                        
                          import numpy as np

a = np.array(([[0.77395605, 0.43887844, 0.85859792],
       [0.69736803, 0.09417735, 0.97562235],
       [0.7611397 , 0.78606431, 0.12811363]]))

b = np.array(([[0.45038594, 0.37079802, 0.92676499],
       [0.64386512, 0.82276161, 0.4434142 ],
       [0.22723872, 0.55458479, 0.06381726]]))

merged_array = np.concatenate((a,b), axis = 0)

res1 = np.corrcoef(a)
res2 = np.corrcoef(a, b)
res3 = np.corrcoef(merged_array)

print("The res of the np.corroef(a) is: \n {}".format(res1))
print("The res2 equal to res3 is {}".format(np.array_equal(res2, res3)))


                        
                      

结果如下图 。

Reference

  1. https://numpy.org/doc/stable/reference/generated/numpy.corrcoef.html

最后此篇关于numpy中计算相关系数的np.corrcoef的文章就讲到这里了,如果你想了解更多关于numpy中计算相关系数的np.corrcoef的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com