开发者学堂课程【Python 常用数据科学库:数组类型】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/546/detail/7464
数组类型
内容介绍:
指定数组的类型的三种方法:
一、指定 dtype 值
二、使用 asarray
三、使用 astype
一、指定 dtype 值
1.将数组指定为浮点数类型
将所构造数组:tang_array = np.array([1,2,3,4,5])指定成浮点数类型,需要将 dtype 值指定为 np.float32 或 np.float64,推荐指定为更省空间的 np.float32。
代码写作:tang_array = np.array([1,2,3,4,5],dtype = np.float32)
将其打印结果,得到 array([1.,2.,3.,4.,5.],dtype=float32)
打印 tang_array的dtype 值:
输入 tang_array.dtype
得到 dtype(‘float32’)
计算当前数组所占用的字节是多少个:
输入 tang_array.nbytes
得到20。因为 float32的类型使单个数字占用4个字节,一共5个数字所以是20
2.使构造的数组包含多种类型
需要将 dtype 值指定为 np.object
代码写作:tang_array = np.array([1,10,3.5,‘str’],dtype = np.object)
将 tang_array 打印结果,
得到 array([1, 10, 3.5, ‘str’],dtype = object)
输入 tang_array*2
得到 array([2, 20, 7.0, ‘strstr’],dtype = object)
而实际操作中 array 通常是用来计算数值,所以最好将 dtype 值指定为统一的 float32,这是最常用的计算格式。
二、使用 asarray
tang_array = np.array([1,2,3,4,5])
//原数组是 tang_array
np.asarray(tang_array,dtype = np.float32)
//将原数组 tang_array 转换成一个32字节浮点数类型的型数组,且不会改变原数组类型
验证:
输入初始数组 tang_array 得到它本身 array([1, 2, 3, 4, 5])
将新数组赋值为,
即 np.asarray(tang_array,dtype = np.float32)
输入 得到所指定类型的数组 array([1., 2., 3., 4., 5.],dtype = float32)
三、使用 astype
输入 tang_array.astype(np.float32)
得到所指定类型的数组 array([1., 2., 3., 4., 5.],dtype = float32)
输入原数组 tang_array 得到它本身 array([1, 2, 3, 4, 5])
总结:
以上两种方法,可以将原数组 tang_array 转换成一个指定类型的型数组,且不会改变原数组类型,而是生成指定类型的新数组,若要使用需要先将新数组赋值为