数组创建
- 使用array函数创建,语法格式为array(列表和元组)
- 可以使用其他函数例如arange、linspace、zeros等创建
- 掌握相关函数的用法
import numpy as np
arr1=np.array([-9,7,4,3],dtype='float')
arr2=np.array([[1,2,3,4],[5,6,7,8],[9,10,11,12]])
np.arange(0,10,0.5)
np.linspace(1,10,11) # 步长=(最大值-最小值)/ 间隔 = (10-1)/(11-1)
# array([ 1. , 1.9, 2.8, 3.7, 4.6, 5.5, 6.4, 7.3, 8.2, 9.1, 10. ])
np.linspace(1,10,10,endpoint=False)
# array([ 1. , 1.9, 2.8, 3.7, 4.6, 5.5, 6.4, 7.3, 8.2, 9.1])
np.logspace(1,5,base=2,num=10)
# array([ 2. , 2.72158 , 3.70349885, 5.0396842 , 6.85795186,
9.33223232, 12.69920842, 17.28095582, 23.51575188, 32. ])
2**np.linspace(1,5,10)
# array([ 2. , 2.72158 , 3.70349885, 5.0396842 , 6.85795186,
9.33223232, 12.69920842, 17.28095582, 23.51575188, 32. ])
np.zeros([4,5])
# array([[0., 0., 0., 0., 0.],
[0., 0., 0., 0., 0.],
[0., 0., 0., 0., 0.],
[0., 0., 0., 0., 0.]])
np.ones([7,6])
# array([[1., 1., 1., 1., 1., 1.],
[1., 1., 1., 1., 1., 1.],
[1., 1., 1., 1., 1., 1.],
[1., 1., 1., 1., 1., 1.],
[1., 1., 1., 1., 1., 1.],
[1., 1., 1., 1., 1., 1.],
[1., 1., 1., 1., 1., 1.]])
np.eye(6)
# array([[1., 0., 0., 0., 0., 0.],
[0., 1., 0., 0., 0., 0.],
[0., 0., 1., 0., 0., 0.],
[0., 0., 0., 1., 0., 0.],
[0., 0., 0., 0., 1., 0.],
[0., 0., 0., 0., 0., 1.]])
np.diag([4,5,8])
# array([[4, 0, 0],
[0, 5, 0],
[0, 0, 8]])
np.diag([4,5,8])+1
# array([[5, 1, 1],
[1, 6, 1],
[1, 1, 9]])
[4,5,8]+1
# TypeError Traceback (most recent call last)
<ipython-input-18-054b96ce073b> in <module>
----> 1 [4,5,8]+1
TypeError: can only concatenate list (not "int") to list
[i+1 for i in [4,5,8]] # 效率没有numpy数组高
arr2=np.array([[1,2,3,4],[5,6,7,8],[9,10,11,12]])
# array([[ 1, 2, 3, 4],
[ 5, 6, 7, 8],
[ 9, 10, 11, 12]])
arr2.shape # (3,4)
arr2.ndim # 2
arr2.dtype # dtype('int32')
arr3=np.array([[1,2,3,4],[5,6,7,8],[9,10,11,12]],dtype='float')
arr3.dtype # dtype('float64')