使用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的随机实数

posted @ 2019-05-08 15:01  あなたの相棒  阅读(131)  评论(0编辑  收藏  举报