zoukankan      html  css  js  c++  java
  • 使用numpy的routines函数创建

    ①numpy.ones(shape, dtype=None, order='C')

    参数:shape->int或int类型序列,表示矩阵形状, dtype->输出的数据类型, order->'C'或者'F',表示数组在内存的存放次序是以行(C)为主还是以列(F)为主

    返回值:给定要求下的单位矩阵

    ①+numpy.ones_like(a, dtype=None, order=’K’, subok=True)

    参数:a->返回值仿照的矩阵, dtype->输出的数据类型, order->‘C’ 、 ‘F’、 ‘A’、 ‘K’,表示数组在内存的存放次序是以行(C)为主还是以列(F)为主,‘A’表示以列为主存储,如果a是列相邻的,‘K’表示尽可能与a的存储方式相同, subok->bool类型True:使用a的内部数据类型,False:使用a数组的数据类型

    返回值:生成与a相似(形状、数据类型)的单位矩阵

    >>> x = np.arange(6)
    >>> x = x.reshape((2, 3))
    >>> x
    array([[0, 1, 2],
           [3, 4, 5]])
    >>> np.ones_like(x)
    array([[1, 1, 1],
           [1, 1, 1]])
    >>> y = np.arange(3, dtype=np.float)
    >>> y
    array([ 0.,  1.,  2.])
    >>> np.ones_like(y)
    array([ 1.,  1.,  1.])

    ②numpy.zeros(shape, dtype=float, order='C')

    参数:shape->int或int类型序列,表示矩阵形状, dtype->输出数据类型, order->‘C’ 或者 ‘F’,表示数组在内存的存放次序是以行(C)为主还是以列(F)为主

    返回值:给定要求下的0矩阵

    zeros = numpy.zeros((2,2))
    '''
    元素都为零的多维数组
    array([[ 0.,  0.],
           [ 0.,  0.]])
    '''

    ②+numpy.zeros_like(a, dtype=None, order=’K’, subok=True)

    参数:a->返回值仿照的矩阵, dtype->输出的数据类型, order->‘C’ 、 ‘F’、 ‘A’、 ‘K’,表示数组在内存的存放次序是以行(C)为主还是以列(F)为主,‘A’表示以列为主存储,如果a是列相邻的,‘K’表示尽可能与a的存储方式相同, subok->bool类型,True:使用a的内部数据类型,False:使用a数组的数据类型

    返回值:生成与a相似(形状/数据类型)的零矩阵

    >>> x = np.arange(6)
    >>> x = x.reshape((2, 3))
    >>> x
    array([[0, 1, 2],
           [3, 4, 5]])
    >>> np.zeros_like(x)
    array([[0, 0, 0],
           [0, 0, 0]])
    >>> y = np.arange(3, dtype=np.float)
    >>> y
    array([ 0.,  1.,  2.])
    >>> np.zeros_like(y)
    array([ 0.,  0.,  0.])

    ③numpy.full(shape, fill_value, dtype=None, order='C')

    参数:shape->int或int类型序列,表示矩阵形状, fill_value:填充值, dtype->输出的数据类型, order->‘C’ 或者 ‘F’,表示数组在内存的存放次序是以行(C)为主还是以列(F)为主

    返回值:给定要求的填充矩阵

    nd = numpy.full((2,2), fill_value=1111)
    '''
    元素都为fill_value的多维数组
    array([[1111, 1111],
           [1111, 1111]])
    '''

    ④numpy.reshape()函数

    reshape()函数作用:根据原来的数组生成一个新的数组,可以通过传入一个shape参数来改变新生成的数组的形状,要求新生成的数组的元素的总个数要和原来的保持一致

    nd = numpy.full((12), fill_value=9)
    # array([9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9])
    numpy.reshape((3,4))
    '''
    array([[9, 9, 9, 9],
           [9, 9, 9, 9],
           [9, 9, 9, 9]])
    '''

    ⑤numpy.eye(N, M=None, k=0, dtype=float)

    参数:N->行数, M->列数, k->对角线偏移, dtype->输出的数据类型

    返回值:对角矩阵(主对角线上元素都为1,其他元素都为0)--对角线向右上方偏移k(k>0向右上方偏移,k<0向左下方偏移)

    # 生成单位矩阵
    nd = np.eye(3)
    '''
    array([[ 1.,  0.,  0.],
           [ 0.,  1.,  0.],
           [ 0.,  0.,  1.]])
    '''

    ⑥numpy.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None)

    作用:在指定的间隔内返回均匀间隔的数字

    ⑦numpy.logspace(start, stop, num=50, endpoint=True, base=10.0, dtype=None)

    作用:生成等比数列

    ⑧numpy.arange([start, ]stop, [step, ]dtype=None)

    作用:生成等差数列

    参数:其中start,step,dtype可以省略,分别是起始点、步长、和返回类型。

    ⑨np.random.random(size=None)

    作用:生成0-1的随机实数

  • 相关阅读:
    有继承的C++析构函数一定要用virtual
    CUDA vs2010配置
    lambda calculus(1)
    SICP练习1.6 1.16 解答
    用函数式来实现集合
    osx guile编译安装
    skiplist poj2892
    [转]理解 pkgconfig 工具
    专业术语解释
    【转】如何学习linux设备驱动
  • 原文地址:https://www.cnblogs.com/jinan1/p/10831910.html
Copyright © 2011-2022 走看看