美文网首页Python我爱编程
numpy.cumsum()用法

numpy.cumsum()用法

作者: 老王叔叔 | 来源:发表于2017-01-01 05:28 被阅读2337次


    简化版本点这里!

    numpy.cumsum

    函数参数有numpy.cumsum(a,  axis=None, dtype=None, out=None)

                                                       # (numpy数组,轴参数,输出数组的元素的数据类型,不会用                                                         到的参数)#

    Return the cumulative sum of the elements along a given axis.

    按照所给定的轴参数返回元素的梯形累计和,axis=0,按照行累加。axis=1,按照列累加。axis不给定具体值,就把numpy数组当成一个一维数组。


    --------------------下面是详细解释,心急的不要看了--------------------

    Parameters参数:

    a: array_like

    Input array.

    axis: int, optional可选参数

    Axis along which the cumulative sum is computed. The default (None) is to compute the cumsum over the flattened array.

    dtype: dtype, optional可选,平台默认是整型

    Type of the returned array and of the accumulator in which the elements are summed. If dtype is not specified, it defaults to the dtype of a, unless a has an integer dtype with a precision less than that of the default platform integer. In that case, the default platform integer is used.

    out: ndarray, optional 这个参数基本用不到,可以忽略了

    Alternative output array in which to place the result. It must have the same shape and buffer length as the expected output but the type will be cast if necessary. See doc.ufuncs (Section “Output arguments”) for more details.如下:

    out

    New in version 1.6.

    The first output can be provided as either a positional or a keyword parameter. Keyword ‘out’ arguments are incompatible with positional ones.

    ..versionadded:: 1.10

    The ‘out’ keyword argument is expected to be a tuple with one entry per output (which can beNonefor arrays to be allocated by the ufunc). For ufuncs with a single output, passing a single array (instead of a tuple holding a single array) is also valid.

    Passing a single array in the ‘out’ keyword argument to a ufunc with multiple outputs is deprecated, and will raise a warning in numpy 1.10, and an error in a future release.

    Returns返回值:

    cumsum_along_axis : ndarray.

    A new array holding the result is returned unless out is specified, in which case a reference to out is returned. The result has the same size as a, and the same shape as a if axis is not None or a is a 1-d array.

    Arithmetic is modular when using integer types, and no error is raised on overflow.

    算术是模块化,当使用整数类型,不会出现溢出错误信息。

    -----------------直接看例子--------------


    >>>

    >>> a = np.array([[1,2,3], [4,5,6]])

    >>> a

    array([[1, 2, 3],

              [4, 5, 6]])

    >>> np.cumsum(a)

    array([ 1,  3,  6, 10, 15, 21])

    >>> np.cumsum(a, dtype=float)    # 指定输出类型。

        #注意啦!没有指定轴!输出就变成1维数组了,如果你本来输入的就是1维数组,那就这样了。

    array([  1.,  3.,  6.,  10.,  15.,  21.])

    #array([1,1+2=3,1+2+3=6,1+2+3+4=10,1+2+3+4+5=15,1+2+3+4+5+6=21])

    >>>

    >>> np.cumsum(a,axis=0)      # sum over rows for each of the 3 columns

                                                      #按照行累加,行求和

    array([[1, 2, 3],

               [5, 7, 9]])            #[1,    2,    3]

                                         #[1+4=5,2+5=7,3+6=9]

    >>> np.cumsum(a,axis=1)      # sum over columns for each of the 2 rows

                                                       #按照列累加,列求和

    array([[ 1,  3,  6],

               [ 4,  9, 15]])

    相关文章

      网友评论

        本文标题:numpy.cumsum()用法

        本文链接:https://www.haomeiwen.com/subject/odnbvttx.html