当前位置:   article > 正文

numpy中的keepdims参数_np.mean keep_dim

np.mean keep_dim

numpy.mean,sum,max,min等函数中都有keepdims这个参数,这个参数的作用:

当 keepidms=True,保持其二维或者三维的特性,(结果保持其原来维数)
默认为 False,不保持其二维或者三维的特性.(结果不保持其原来维数)

假设我们有一个二维数组A,其中A的形状为(3,2),我们想要求A的所有元素之和。我们可以使用Numpy的sum()方法来实现这个操作。代码如下所示:

  1. import numpy as np
  2. A = np.array([[1, 2], [3, 4], [5, 6]])
  3. sum = np.sum(A)
  4. print(sum)

假如矩阵A是n*n的矩阵

A.sum()是计算矩阵A的每一个元素之和。

A.sum(axis=0)是计算矩阵每一列元素相加之和。

A.Sum(axis=1)是计算矩阵的每一行元素相加之和

 

这个脚本的输出结果是21。现在我们将keepdims设置为True,代码如下所示:

  1. import numpy as np
  2. A = np.array([[1, 2], [3, 4], [5, 6]])
  3. sum = np.sum(A, keepdims=True)
  4. print(sum)

这个脚本的输出结果是[[21]]。在这里,我们可以看到输入A是一个二维数组,但输出结果sum是一个一维数组。在keepdims设置为True时,np.sum()返回一个具有与输入A相同数目的轴的数组,而这些轴中有一个的长度始终为1。也就是说,在本例中,输出结果sum的形状为(1,1)。

如果我们没有设置keepdims为True,并且继续使用以上的代码,会输出一个数字21,且A的维度无法保留。因此,在需要保留输入数组维度的情况下,与保留的轴的长度为1相对应,应将keepdims设置为True。

np.mean()

np.mean()方法计算数组中元素的平均值。如果我们将keepdims设置为True,结果数组将具有与输入数组相同的形状。例如,假设我们有一个四维数组B,形状为(4,3,2,1),我们想要计算B中的元素平均值。代码如下所示:

  1. import numpy as np
  2. B = np.ones((4,3,2,1))
  3. mean = np.mean(B, keepdims=True)
  4. print(mean.shape)

这个脚本的输出结果是(1,1,1,1)。在这里,np.mean()方法使用了输入B数组并返回一个形状与B相同的数组。

np.max()

np.max()方法计算数组的最大值。如果将keepdims设置为True,则结果数组将具有与输入数组相同的形状。例如,假设我们有一个三维数组C,它的形状为(2,3,4),我们想要计算C中的最大值。代码如下所示:

  1. import numpy as np
  2. C = np.array([[[1,2,3,4],[5,6,7,8],[9,10,11,12]],[[13,14,15,16],[17,18,19,20],[21,22,23,24]]])
  3. max = np.max(C, axis=(0,1), keepdims=True)
  4. print(max.shape)

这个脚本的输出结果是(1,1,4)。在这里,我们可以看到输出数组使用相同的形状(2,3,4),并将轴(0,1)的最大值保留。因此,输出的结果是一个形状为(1,1,4)的数组,它具有与输入数组C第三维相同的形状。

np.std()

np.std()方法计算给定数组的标准差。如果将keepdims设置为True,则结果数组将具有与输入数组相同的形状。例如,假设我们有一个一维数组D,其形状为(6,),我们想要计算D的标准差。代码如下所示:

  1. import numpy as np
  2. D = np.array([1, 2, 3, 4, 5, 6])
  3. std = np.std(D, keepdims=True)
  4. print(std.shape)

这个脚本的输出结果是(1,)。在这里,我们可以看到输出数组使用与输入数组相同的形状,而不是标量结果。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/133131
推荐阅读
相关标签
  

闽ICP备14008679号