浅谈python 中的 type(), dtype(), astype()的区别


Posted in Python onApril 09, 2020

如下所示:

函数 说明
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()的区别就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python学习笔记:字典的使用示例详解
Jun 13 Python
浅谈numpy中linspace的用法 (等差数列创建函数)
Jun 07 Python
python运行其他程序的实现方法
Jul 14 Python
Python双精度浮点数运算并分行显示操作示例
Jul 21 Python
对Python3中的print函数以及与python2的对比分析
May 02 Python
Python开发最牛逼的IDE——pycharm
Aug 01 Python
python处理大日志文件
Jul 23 Python
Python Celery多队列配置代码实例
Nov 22 Python
Python3 中作为一等对象的函数解析
Dec 11 Python
使用python计算三角形的斜边例子
Apr 15 Python
python属于跨平台语言码
Jun 09 Python
python基于opencv实现人脸识别
Jan 04 Python
利用python绘制数据曲线图的实现
Apr 09 #Python
利用python生成照片墙的示例代码
Apr 09 #Python
Python 改变数组类型为uint8的实现
Apr 09 #Python
pandas 强制类型转换 df.astype实例
Apr 09 #Python
python 给图像添加透明度(alpha通道)
Apr 09 #Python
Python日志logging模块功能与用法详解
Apr 09 #Python
解决python DataFrame 打印结果不换行问题
Apr 09 #Python
You might like
学习php设计模式 php实现合成模式(composite)
2015/12/08 PHP
php封装的验证码工具类完整实例
2016/10/19 PHP
浅谈PHP安全防护之Web攻击
2017/01/03 PHP
在Laravel5.6中使用Swoole的协程数据库查询
2018/06/15 PHP
许愿墙中用到的函数
2006/10/07 Javascript
extjs DataReader、JsonReader、XmlReader的构造方法
2009/11/07 Javascript
jQuery 动画弹出窗体支持多种展现方式
2010/04/29 Javascript
Jquery Validate 正则表达式实用验证代码大全
2013/08/23 Javascript
node.js操作mongoDB数据库示例分享
2014/11/26 Javascript
Javascript中拼接大量字符串的方法
2015/02/05 Javascript
JavaScript获取网页表单action属性的方法
2015/04/02 Javascript
你有必要知道的10个JavaScript难点
2017/07/25 Javascript
浅谈vue-lazyload实现的详细过程
2017/08/22 Javascript
angularjs实现简单的购物车功能
2017/09/21 Javascript
JS实现网页抢购功能(触发,终止脚本)
2017/11/27 Javascript
JavaScript实现读取与输出XML文件数据的方法示例
2018/06/05 Javascript
微信小程序按钮去除边框线分享页面功能
2018/08/27 Javascript
vue router导航守卫(router.beforeEach())的使用详解
2019/04/19 Javascript
如何在postman中添加cookie信息步骤解析
2020/06/30 Javascript
[01:12](回顾)DOTA2国际邀请赛,全世界DOTAer的盛宴
2014/07/01 DOTA
[04:44]DOTA2 2017全国高校联赛视频回顾
2017/08/21 DOTA
[02:06]2018完美世界全国高校联赛秋季赛开始报名(附彩蛋)
2018/09/03 DOTA
python Django模板的使用方法(图文)
2013/11/04 Python
JavaScript实现一维数组转化为二维数组
2018/04/17 Python
python pcm音频添加头转成Wav格式文件的方法
2019/01/09 Python
python中@property的作用和getter setter的解释
2020/12/22 Python
校园门卫岗位职责
2013/12/09 职场文书
领导证婚人证婚词
2014/01/13 职场文书
大学生求职自我评价
2014/01/16 职场文书
制药工程专业个人求职自荐信
2014/01/25 职场文书
先进班级集体事迹材料
2014/01/30 职场文书
法定代表人授权委托书范文
2014/09/22 职场文书
Python djanjo之csrf防跨站攻击实验过程
2021/05/14 Python
一些让Python代码简洁的实用技巧总结
2021/08/23 Python
实战 快速定位MySQL的慢SQL
2022/03/22 MySQL
python中使用redis用法详解
2022/12/24 Redis