numpy
提供了一个名为
ndarray
的多维数组对象,该数组元素具有固定大小
,即
numpy
只能存放同一种数据类型的对象,因此能够确定存储数组所需空间的大小,能够运用向量化运算来处理整个数组,具有较高的运算效率。
NumPy提供了两种基本的对象:
ndarray (N-dimensional array object)和ufunc(universal function object)
ndarray是存储单一数据类型的多维数组,而ufunc则是能够对数组进行处理的函数。
ndarray (N-dimensional array object)和ufunc(universal function object)
ndarray是存储单一数据类型的多维数组,而ufunc则是能够对数组进行处理的函数。
1.基于List创建ndarray
np.array(lst1,
dtype='int32'
)
# dtype=int
import numpy as np # 导入numpy库,取别名为np
lst1 = [1,2,3,4,5,6] # 定义一个列表
a1=np.array(lst1) # 创建一维数组
print('a1=',a1) # 打印一维数组
lst2 = [[1,2,3],[4,5,6]] # 定义一个嵌套列表
a2 = np.array(lst2) # 创建二维数组
print('a2=\n',a2) # 打印二维数组
2.基于元组创建
import numpy as np # 导入numpy库,取别名为np
a=(1,2,3)
print(np.array(a))
[1 2 3]
3.基于迭代器创建
print(np.array(range(5)))
[0 1 2 3 4]
若想将数组元素转换数据类型,可以使用astype()函数。
. astype方法会创建一个新的数组,并不会改变原有数组的数据类型。
·将浮点数转换为整数时元素的小数部分被截断,而不是四舍五入。
·数值型的字符串可以通过astype方法将其转换为数值类型,但如果字符串中有非数值型字符进行转换就会报错。
通过函数创建特殊数组
1.ones(shape, dtype=float, order='C') 创建全一数组
a = np.ones(4)
print('a=\n', a)
a=
[1. 1. 1. 1.]
2.创建全0数组 zeros(shape,dtype=float,order = 'C')
a = np.zeros((3,5))
print('a=\n', a)
a=
[[0. 0. 0. 0. 0.]
[0. 0. 0. 0. 0.]
[0. 0. 0. 0. 0.]]
3.创建对角为1的矩阵