如下所示:
函数 说明 type() 返回数据结构类型(list、dict、numpy.ndarray 等) dtype()返回数据元素的数据类型(int、float等)
备注:1)由于 list、dict 等可以包含不同的数据类型,因此不可调用dtype()函数
2)np.array 中要求所有元素属于同一数据类型,因此可调用dtype()函数
astype()改变np.array中所有数据元素的数据类型。
备注:能用dtype() 才能用 astype()
测试代码:
import numpy as np class Myclass(): pass a = [[1,2,3],[4,5,6]] b = {'a':1,'b':2,'c':3} c = np.array([1,2,3]) d = Myclass() e = np.linspace(1,5,10) c_ = c.astype(np.float) f = 10 print("type(a)=",type(a)) print("type(b)=",type(b)) print("type(c)=",type(c)) print("type(d)=",type(d)) print("type(e)=",type(e)) print("type(f)=",type(f)) print("type(c_)=",type(c_)) # print(a.dtype) ## AttributeError: 'list' object has no attribute 'dtype' # print(b.dtype) ## AttributeError: 'dict' object has no attribute 'dtype' print(c.dtype) # print(d.dtype) ## AttributeError: 'Myclass' object has no attribute 'dtype' print(e.dtype) print(c_.dtype) # print(f.dtype) ## AttributeError: 'int' object has no attribute 'dtype' # print(a.astype(np.int)) ## AttributeError: 'list' object has no attribute 'astype' # print(b.astype(np.int)) ## AttributeError: 'dict' object has no attribute 'astype' print(c.astype(np.int)) # print(d.astype(np.int)) ## AttributeError: 'Myclass' object has no attribute 'astype' print(e.astype(np.int)) # print(f.astype(np.int)) ## AttributeError: 'int' object has no attribute 'astype'
补充知识:pandas astype()错误
由于数据出现错误
DataError: No numeric types to aggregate
改正以后才认识到astype的重要性。
Top15['populations'] = Top15['Energy Supply'].div(Top15['Energy Supply per Capita']).astype(float)
df_mean = ((df.set_index('Continent').groupby(level=0)['populations'].agg({'mean' : np.mean})))
#加了astype(float)后无错误
以上这篇浅谈python 中的 type(), dtype(), astype()的区别就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
P70系列延期,华为新旗舰将在下月发布
3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。
而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?
根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。