- 创建数组方法
- 方法1
array=np.arange(0,10,2) #第3个参数为步长
print(array)
print(type(array))
print(array.shape)
结果
[0 2 4 6 8]
<class 'numpy.ndarray'>
(5,)
- 方法2
array=np.linspace(0,10,3)
#第3个参数为生成数组的个数,根据第3个参数计算步长,包含末尾
#若不想包含10,则array=np.linspace(0,10,3,endpoint=False)
print(array)
结果
[ 0. 5. 10.]
- 特殊数组生成方法
#empty
#不要使用empty生成矩阵,因为这些值不确定
array=np.empty((3,3))
print(array)
#zeros
array=np.zeros((3,3))
print(array)
#ones
array=np.ones((3,3))
print(array)
#eye-单位矩阵
array=np.eye((3))
print(array)
#随机数组
#np.random
array=np.random.random(3)
print(array)
array=np.random.random((3,3))
print(array)
#标准正态分布
array=np.random.randn(3,3)
print(array
结果
[[1. 0. 0.]
[0. 1. 0.]
[0. 0. 1.]]
[[0. 0. 0.]
[0. 0. 0.]
[0. 0. 0.]]
[[1. 1. 1.]
[1. 1. 1.]
[1. 1. 1.]]
[[1. 0. 0.]
[0. 1. 0.]
[0. 0. 1.]]
[0.81243568 0.80049374 0.88590814]
[[0.96833161 0.62156136 0.97778755]
[0.58508969 0.95868783 0.54912343]
[0.67625543 0.42730804 0.62890241]]
[[ 1.09668361 0.33349527 0.9635504 ]
[ 1.40231994 0.16818112 -0.1195861 ]
[-0.07497057 0.29868512 -0.75542806]]
- 数组统计学方法
- 比较
array=np.array([1,2,3,4,5,6,7,8,9]).reshape(3,3)
print(array)
a=np.amax(array)#所有元素的最值
print(a)
a=np.amin(array)
print(a)
a=np.amin(array,axis=0)#沿纵轴比较
print(a)
a=np.amin(array,axis=1)#沿横轴比较
print(a)
结果
[[1 2 3]
[4 5 6]
[7 8 9]]
9
1
[1 2 3]
[1 4 7]
- 求和
array=np.array([1,2,3,4,5,6,7,8,9]).reshape(3,3)
print(array)
a=np.sum(array)
print(a)
a=np.sum(array,axis=0)#沿纵轴求和
print(a)
a=np.sum(array,axis=1)#沿横轴求和
print(a)
结果
[[1 2 3]
[4 5 6]
[7 8 9]]
45
[12 15 18]
[ 6 15 24]
- 统计数据
###
np.mean #求均值
np.median #求中位数
np.average #带权重求平均值
np.var #方差
np.std #标准差,就是方差的开方
###
a=np.mean(array)
print(a)
a=np.average(array)
print(a)
array1=np.array([1,2,3,4,5,6])
array2=np.array([6,5,4,3,2,1])
a=np.average(array1,weights=array2)
#等效于 np.sum(array1*array2)/np.sum(array2)
print(a)
结果
5.0
5.0
2.6666666666666665
- 数学方法
np.pi
np.e
np.sin
np.sin(np.linspace(0,np.pi,100)) #生成一个正弦数列
np.around #对数列每个值进行四舍五入
np.floor #向下取整
np.ceil #向上取整
np.dot #矩阵点积