浅谈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实现方法
Nov 18 Python
Flask web开发处理POST请求实现(登录案例)
Jul 26 Python
python三引号输出方法
Feb 27 Python
python实现控制电脑鼠标和键盘,登录QQ的方法示例
Jul 06 Python
python实现LBP方法提取图像纹理特征实现分类的步骤
Jul 11 Python
python快速编写单行注释多行注释的方法
Jul 31 Python
python关于变量名的基础知识点
Mar 03 Python
python:批量统计xml中各类目标的数量案例
Mar 10 Python
Python API 操作Hadoop hdfs详解
Jun 06 Python
matplotlib 使用 plt.savefig() 输出图片去除旁边的空白区域
Jan 05 Python
Python 把两层列表展开平铺成一层(5种实现方式)
Apr 07 Python
Python 处理表格进行成绩排序的操作代码
Jul 26 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生成缩略图填充白边(等比缩略图方案)
2013/12/25 PHP
php中session使用示例
2014/03/29 PHP
微信营销平台系统?刮刮乐的开发
2014/06/10 PHP
PHP获取一个字符串中间一部分字符的方法
2014/08/19 PHP
PHP开发注意事项总结
2015/02/04 PHP
php实现以只读方式打开文件的方法
2015/03/16 PHP
浅谈PHP中类和对象的相关函数
2017/04/26 PHP
PHP实现链表的定义与反转功能示例
2018/06/09 PHP
PHP面向对象类型约束用法分析
2019/06/12 PHP
javascript让setInteval里的函数参数中的this指向特定的对象
2010/01/31 Javascript
JavaScript子窗口ModalDialog中操作父窗口对像
2012/12/11 Javascript
js怎么终止程序return不行换jfslk
2013/05/30 Javascript
js文本框输入点回车触发确定兼容IE、FF等
2013/11/19 Javascript
javascript控制台详解
2015/06/25 Javascript
JavaScript Array对象详解
2016/03/01 Javascript
Bootstrap编写一个兼容主流浏览器的受众巨幕式风格页面
2016/07/01 Javascript
清除js缓存的多种方法总结
2016/12/09 Javascript
利用nginx + node在阿里云部署https的步骤详解
2017/12/19 Javascript
微信小程序canvas实现刮刮乐效果
2018/07/09 Javascript
javascript中this的用法实践分析
2019/07/29 Javascript
微信小程序移动拖拽视图-movable-view实例详解
2019/08/17 Javascript
vue el-table实现行内编辑功能
2019/12/11 Javascript
vue实现数字滚动效果
2020/06/29 Javascript
解决父组件将子组件作为弹窗调用只执行一次created的问题
2020/07/24 Javascript
python中实现定制类的特殊方法总结
2014/09/28 Python
利用Python找出序列中出现最多的元素示例代码
2017/12/08 Python
Python设计模式之工厂方法模式实例详解
2019/01/18 Python
python调用支付宝支付接口流程
2019/08/15 Python
python GUI库图形界面开发之PyQt5窗口控件QWidget详细使用方法
2020/02/26 Python
Python视频编辑库MoviePy的使用
2020/04/01 Python
应届毕业生求职自荐书
2014/01/03 职场文书
酒店个人求职信范文
2014/01/25 职场文书
在校实习生求职信
2014/06/18 职场文书
出生公证书
2015/01/23 职场文书
springboot集成flyway自动创表的详细配置
2021/06/26 Java/Android
Win10多屏显示如何设置?Win10电脑多屏显示设置操作方法
2022/07/07 数码科技