1.通过array()创建
函数定义方法:def array(p_object, dtype=None, copy=True, order='K', subok=False, ndmin=0):
使用:
一维数组:a = np.array([0, 1, 2, 3, 4]) 二维数组:b = np.array([[11, 12, 13, 14, 15], [16, 17, 18, 19, 20]])三维数组:c = np.array([[(1.5, 2, 3), (4, 5, 6)], [(3, 2, 1), (4, 5, 6)]],[[11, 12, 13, 14, 15], [16, 17, 18, 19, 20]] ) 两个一维之间加“,”,外边加[]。三维在二维中间加“,”,外边加[]2.通过asarray()创建
函数定义方法:def asarray(a, dtype=None, order=None):return array(a, dtype, copy=False, order=order)
与array()区别:当数据源是ndarray 时, array() 仍然会 copy 出一个副本,占用新的内存,但不改变 dtype 时 asarray() 不会3. fromfunction()
函数定义方法:def fromfunction(function, shape, **kwargs): 作用:从函数中创建数组应用场景:函数绘图用到例子:def f(x, y):return 10 * x + y
x = np.fromfunction(f, ( 5 , 4 ), dtype= int )应用场景:初始化参数,
1.zeros() 函数:返回给定形状和类型的零数组。
函数:def zeros(shape, dtype=None, order='C'):2.zeros_like() 函数:返回与给定数组形状和类型相同的零数组。
函数:def zeros_like(a, dtype=None, order='K', subok=True, shape=None):1.ones() 函数:返回给定形状和类型的1数组。
函数:def ones(shape, dtype=None, order='C'):2.ones_like() 函数:返回与给定数组形状和类型相同的1数组。
函数:def ones_like(a, dtype=None, order='K', subok=True, shape=None):注:空数组不是没有数,而是随机数
1.empty() 函数:返回一个空数组,数组元素为随机数。
函数:def empty(shape, dtype=None, order='C'):例子: x = np.empty( 5 ) print (x) # [1.95821574e-306 1.60219035e-306 1.37961506e-306 # 9.34609790e-307 1.24610383e-306]2.empty_like 函数:返回与给定数组具有相同形状和类型的新数组。
函数:def empty_like(prototype, dtype=None, order='K', subok=True, shape=None): 例子: x = np.array([[ 1 , 2 , 3 ], [ 4 , 5 , 6 ]]) y = np.empty_like(x) print (y) # [[ 7209029 6422625 6619244] # [ 100 707539280 504]]1.diag() :提取对角线或构造对角数组。
函数:def diag(v, k=0):使用参数 dtype 为定义的结构,np.array() 来创建数组
1.利用字典定义结构
例子:
2.利用列表定义结构 五、数组的属性 用来查找numpy数组的某些信息 numpy.ndarray.ndim 用于返回数组的维数(轴的个数)也称为秩,一维数组的秩为 1,二维数组的秩为 2,以此类推。 numpy.ndarray.shape 表示数组的维度,返回一个元组,这个元组的长度就是维度的数目,即 ndim 属性(秩)。 numpy.ndarray.size 数组中所有元素的总量,相当于数组的 shape 中所有元素的乘积,例如矩阵的元素总量为行与列的乘积。 numpy.ndarray.dtype ndarray 对象的元素类型。 numpy.ndarray.itemsize 以字节的形式返回数组中每一个元素的大小。 函数: class ndarray ( object ): shape = property ( lambda self : object (), lambda self , v: None , lambda self : None ) dtype = property ( lambda self : object (), lambda self , v: None , lambda self : None ) size = property ( lambda self : object (), lambda self , v: None , lambda self : None ) ndim = property ( lambda self : object (), lambda self , v: None , lambda self : None ) itemsize = property ( lambda self : object (), lambda self , v: None , lambda self : None ) 在 ndarray 中所有元素必须是同一类型,否则会自动向下转换, int->float->str