当前位置:首页 > 编程笔记 > 正文
已解决

NumPy 相关函数

来自网友在路上 149849提问 提问时间:2023-11-02 06:02:40阅读次数: 49

最佳答案 问答题库498位专家为你答疑解惑

本篇文章介绍了Python中NumPy库的相关函数 np.corrcoef() 函数。


NumPy 中的相关性

相关系数是一个数字值,表示数据集给定特征之间的关系。

相关性可以是正相关,这意味着它们具有直接关系,并且一个特征的增加会导致另一个特征的增加。 负相关也是可能的,这表明这两个特征彼此呈反比关系,这意味着一个特征的上升将导致另一个特征的下降。

以下是一些不同的相关性。

  • 皮尔逊相关系数
  • 肯德尔相关系数
  • 斯皮尔曼相关系数

然而,NumPy 库函数 np.corrcoef() 仅关注并计算 Pearson 相关值。 其他相关性可以使用 SciPy 库提供的直接函数找到。

本篇文章仅关注 np.coefcorr() 函数及其实现。


使用 np.corrcoef() 函数在 Python 中实现关联

NumPy 库中的 np.corrcoef() 函数用于获取任意两个数组之间的皮尔逊相关系数矩阵,前提是两个数组的形状相同。 该函数通常返回一个二维数组,它描述了相关系数。

将 NumPy 库导入到 Python 代码中即可实现此功能,不会出现任何错误。

示例代码:

import numpy as np
a=np.arange(20,30)
b=np.array([8,12,29,33,60,48,21,44,78,96])
x=np.corrcoef(a,b)
print(x)

输出:

[[1.          0.82449488][0.82449488  1.        ]]

输出矩阵的主对角线的所有值始终为一。 在我们的例子中,左上角元素的值为 1,因为它返回 x 与 x 的相关系数,右下元素返回 y 与 y 的相关系数。

给定输出矩阵中需要考虑的主要值是其他两个值。 对于我们的情况,该值约为 0.82。 此外,这两个元素始终具有相同的值。


使用 Matplotlib 库的 Correlation 来制作相关图

NumPy 库还可以与 Matplotlib 库一起使用,使用户能够将相关图作为输出。 以下代码使用 Matplotlib 库的相关函数 corrcoef() 来制作相关图。

示例代码:

import numpy as np
x=np.arange(20,30)
y=np.array([8,12,29,33,60,48,21,44,78,96])
print(np.corrcoef(x,y))
import matplotlib
import matplotlib.pyplot as plt
%matplotlib inline
matplotlib.style.use('ggplot')
plt.scatter(x, y)
plt.show()

输出:

使用与 matplotlib 库的关联

上图显示出正相关性,因为该图似乎具有总体向上的轨迹。 对于给定数组中元素数量较多的情况,这种类型的图表效果更好。

查看全文

99%的人还看了

猜你感兴趣

版权申明

本文"NumPy 相关函数":http://eshow365.cn/6-29947-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!