numpy中的通用函数概念和表示法

时间:2018-08-26 09:53:06

标签: python numpy numpy-ufunc

我正在学习numpy软件包,并且找到了以下代码示例:

import numpy as np
a = np.array([[1,2,3], [4,5,6]])
np.add.reduce(a)

我无法理解的是点符号:

np.add.reduce(a)

例如,与之相反

np.add(a,5)

我了解加法和减法是什么,但是加法是什么?什么是还原?

1 个答案:

答案 0 :(得分:1)

“减少”是一个通用概念,我在https://docs.python.org/3/library/functools.html#functools.reduce

上找到了一个不错的定义
  

将两个参数的函数从左到右累计应用于序列项,以将序列缩减为单个值。

Numpy的ufunc减少记录在https://docs.scipy.org/doc/numpy/reference/generated/numpy.ufunc.reduce.html

  

通过沿一个轴应用ufunc,将尺寸减小1。

因此np.add.reduce(a)(也称为np.add.reduce(a, axis=0))将在np.adda[0]上调用a[1],然后将结果添加到a[2],直到包含所有len(a)元素。

结果:array([5, 7, 9])


np.add(x, y)基本上是x + ynp.add.reduce(a, axis=0)基本上是np.sum(a, axis=0)


np.add.reduce(a, axis=1)a[:, 0]添加到a[:, 1],然后将结果添加到a[:, 2],依此类推。

结果:array([ 6, 15])