赞
踩
import numpy as np
a = np.random.random(4)
看看结果信息,左侧是结果信息,右侧是对应的python语句
我们发现这个数组的type是float64,那我们试着改变一个数组的类型,会有什么样的变化呢?请看下面的截图
我们发现数组长度翻倍了!由原来的(4,)变成了(8,)
那么,再次改变数组的类型,由float32改为float16,会是什么样的结果呢?
果然不出所料,数组的长度再次翻倍,由原来的(8,)变成了(16,)
如果再次改变数组的类型,由float16变为float64,会发现数组的长度也会由(16,)变为(4,)
同理,如果数组的类型是int,也会有这样类似的变化
dtype = 'int32' 时对应的的数组长度为 (8,)
若改为 a.dtype = 'int16',则数组长度会再次翻倍,变为(16,)
若改为 a.dtype = 'int8',则数组成都会再次翻倍,变为(32,)
如果改为 a.dtype = 'int',会发现整数默认的是int32;如果改为 a.dtype = 'float' ,会发现浮点型默认的是float64
很多时候我们用numpy从文本文件读取数据作为numpy的数组,默认的dtype是float64。
但是有些场合我们希望有些数据列作为整数。如果直接改dtype='int'的话,就会出错!原因如上,数组长度翻倍了!!!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。