1. 创建数组array
1.1 array函数创建
1.1.1 语法格式
numpy.array(object, dtype=None, *, copy=True, order='K', subok=False,
ndmin=0, like=None)
参数 含义 object 数组序列,如:列表/元组 dtype 可选参数,数组数据的类型;若未指定由数组序列最小类型决定 copy 可选参数,布尔型,默认取值为True,具体如何使用尚不清楚 order 可选参数,以何种内存布局创建数组,尚不理解 subok 可选参数,布尔型,默认取值为False,尚不理解 ndmin 可选参数,指定数组的维度,默认为1维 like 可选参数,类数组,尚不理解
1.1.2 实践代码
a = np. array( [ 1 , 2 , 3 , '4' ] )
print ( a)
b = np. array( [ 1 , 2 , 3.14 , 4.56 ] )
print ( b)
d = np. array( [ [ 1 , 2 , 3 ] , ( 'a' , 'b' , 'c' ) ] )
print ( d)
print ( d. ndim)
e = np. array( [ [ 1 , 2 , 3 , 4 ] , ( 'a' , 'b' , 'c' ) ] , dtype= object )
print ( e)
print ( e. ndim)
f = np. array( [ 1 , 2 , 3 , 4 ] )
print ( f)
print ( f. dtype)
g = np. array( [ 1.9 , 2 , 3.14 , 5 ] , dtype= 'int32' )
print ( g)
print ( id ( g) )
h = np. array( g, copy= False )
print ( h)
print ( id ( h) )
j = np. array( g)
print ( j)
print ( id ( j) )
k = np. array( [ 1 , 2 , 3 ] , ndmin= 2 )
print ( k)
print ( k. ndim)
1.2 arange函数创建
1.2.1 函数语法
numpy.arange([start, ]stop, [step, ]dtype=None, *,
like=None)
参数 含义 start 可选参数,起始值,默认值为0 stop 结束值(不包含) step 可选参数,步长,默认值为1 dtype 可选参数, 数组数据的类型,默认根据其他输入参数情况推断 like 尚不清楚
1.2.2 实践代码
a1 = np. arange( 8 )
print ( a1)
print ( a1. dtype)
a2 = np. arange( 2.2 , 9.9 )
print ( a2)
print ( a2. dtype)
a3 = np. arange( 2.2 , 9.9 , 0.8 )
print ( a3)
print ( a3. dtype)
a4 = np. arange( 0 , 201 , 3 )
print ( a4)
print ( a4. shape)
1.3 linspace()函数创建
1.3.1 语法格式
numpy. linspace( start, stop, num= 50 , endpoint= True , retstep= False , dtype= None ,
axis= 0 )
创建等差数组
参数 含义 start 起始值 stop 结束值 num 产生的样本量,可选参数,默认为50个 endpoint 布尔值,可选参数,取值位True,则包含结束值;否则不包含;默认包含结束值 retstep 布尔值,可选参数,默认取值False,只返回样本数据;取值位True时除样本数据外还会返回步长 dtype 可选参数,输出数组的数据类型,默认根据起始值和终止值推断 axis 可选参数,整数,指定存储样本的轴,仅当start或stop为数组时起作用
1.3.2 实践代码
s1 = np. linspace( 0 , 50 )
print ( 's1:' , s1)
s2 = np. linspace( 0 , 50 , 10 )
print ( 's2:' , s2)
s3 = np. linspace( 0 , 50 , 10 , endpoint= False )
print ( 's3:' , s3)
s4 = np. linspace( 0 , 50 , 10 , endpoint= False , retstep= True )
print ( 's4:' , s4)
a = np. array( [ 1 , 2 ] )
b = np. array( [ 7 , 8 ] )
s5 = np. linspace( a, b, num= 4 , axis= 0 )
print ( 's5:' , s5)
s6 = np. linspace( a, b, num= 4 , axis= 1 )
print ( 's6:' , s6)
1.4 logspace函数创建
1.4.1 语法格式
创建等比数组
numpy. logspace( start, stop, num= 50 , endpoint= True , base= 10.0 , dtype= None ,
axis= 0 )
参数 含义 start 起始值 stop 结束值 num 产生的样本量,可选参数,默认为50个 endpoint 布尔值,可选参数,取值位True,则包含结束值;否则不包含;默认包含结束值 base 可选参数,底数,默认为10 dtype 可选参数,输出数组的数据类型,默认根据起始值和终止值推断 axis 可选参数,整数,指定存储样本的轴,仅当start或stop为数组时起作用
1.4.2 实践代码
g1 = np. logspace( 1 , 5 , num= 5 )
print ( 'g1:' , g1)
g2 = np. logspace( 1 , 5 , num= 5 , endpoint= False )
print ( 'g2:' , g2)
g3 = np. logspace( 1 , 5 , num= 5 , base= 2 )
print ( 'g3:' , g3)
总结:
np.logspace(A,B,C,base=D)
A : 生成数组的起始值为D的A次方
B: 生成数组的结束值为D的B次方
C: 总共生成C个数
D: 指数型数组的底数为D,默认为base=10
1.5 全0数组
1.5.1 函数语法
numpy.zeros(shape, dtype=float, order='C', *, like=None)
返回指定形状和数据类型的以0填充的数组
参数 含义 shape 数组形状,取值为整数或整数组成的元组 dtype 可选参数;生成数组的数据类型,默认为float64 order 可选参数;内存中数据的存储形式 like 尚不清楚
1.5.2 实践代码
a = np. zeros( 5 )
print ( a)
print ( a. shape)
b = np. zeros( ( 5 , ) )
print ( b)
print ( b. shape)
d = np. zeros( ( 5 , ) , dtype= 'int32' )
print ( d)
print ( d. shape)
e = np. zeros( ( 2 , 3 ) )
print ( e)
print ( e. shape)
1.6 全1数组
1.6.1 函数语法
numpy.ones(shape, dtype=float, order='C', *, like=None)
返回指定形状和数据类型的以1填充的数组
参数 含义 shape 数组形状,取值为整数或整数组成的元组 dtype 可选参数;生成数组的数据类型,默认为float64 order 可选参数;内存中数据的存储形式 like 尚不清楚
a = np. ones( 5 )
print ( a)
print ( a. shape)
b = np. ones( ( 5 , ) )
print ( b)
print ( b. shape)
d = np. ones( ( 5 , ) , dtype= 'int32' )
print ( d)
print ( d. shape)
e = np. ones( ( 2 , 3 ) )
print ( e)
print ( e. shape)
1.6.2 实践代码
2. 数组的属性
属性 说明 ndarray.ndim 秩,即数组维度的数量 ndarray.shape 数组的维度,如矩阵:n行m列 ndarray.size 数组元素的个数,相当于shape中的n*m ndarray.dtype 数组中元素的类型 ndarray.itemsize ndarray中每个元素的大小,以字节为单位
参考文献:numpy.array