一.基础:
Numpy的主要数据类型是ndarray,即多维数组。它有以下几个属性:
ndarray.ndim:数组的维数
ndarray.shape:数组每一维的大小
ndarray.size:数组中全部元素的数量
ndarray.dtype:数组中元素的类型(numpy.int32, numpy.int16, and numpy.float64等)
ndarray.itemsize:每个元素占几个字节
# 生成3行5列二维数组
a = np.arange(15).reshape(3,5) # arange默认开始位置为0,可自己设置开始和结尾的值,
print(a)
print(a.ndim) # 数组维度
[[ 0 1 2 3 4]
[ 5 6 7 8 9]
[10 11 12 13 14]]
2
# 生成数组并赋为特殊值:
# ones:全1
# 默认类型是float64
a = np.ones((5,4), dtype=np.int16)
print(a)
# zeros:全0
a = np.zeros((5,4), dtype=np.int16)
print(a)
# empty:随机数,取决于内存情况
a = np.empty( (10,10),dtype=np.int16 )
print(a)
[[1 1 1 1]
[1 1 1 1]
[1 1 1 1]
[1 1 1 1]
[1 1 1 1]]
[[0 0 0 0]
[0 0 0 0]
[0 0 0 0]
[0 0 0 0]
[0 0 0 0]]
[[ 41 63 63 92 68 58 92 80 114 111]
[ 103 114 97 109 115 92 80 121 116 104]
[ 111 110 51 55 92 108 105 98 92 115]
[ 105 116 101 45 112 97 99 107 97 103]
[ 101 115 92 110 117 109 112 121 92 114]
[ 97 110 100 111 109 92 109 116 114 97]
[ 110 100 46 99 112 51 55 45 119 105]
[ 110 95 97 109 100 54 52 46 112 121]
[ 100 46 50 46 77 97 110 105 102 101]
[ 115 116 0 115 116 0 116 0 26996 28271]]
# 生成均匀分布的array:
# arange(最小值,最大值,步长)(左闭右开)
a = np.arange(0,25,5)
print(a)
# linspace(最小值,最大值,元素数量)
a = np.linspace(0,1,10) # 0到1之间10个数
print(a)
# 使用array函数讲tuple和list转为array:
a = np.array([2,3,4])
print(a)
print(a.dtype) # 数组中元素的类型
b = np.array([1.2, 3.5, 5.1])
print(b.dtype)
b = np.array([(1.5,2,3), (4,5,6)])
print(b)
[[1.5 2. 3. ]
[4. 5. 6. ]]
b = np.array([[1.5,2,3], [4,5,6]])
print(b)
[[1.5 2. 3. ]
[4. 5. 6. ]]