浅谈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 max内置函数详细介绍
Nov 17 Python
简单了解Django模板的使用
Dec 20 Python
详解python函数传参是传值还是传引用
Jan 16 Python
Python中利用xpath解析HTML的方法
May 14 Python
Python列表推导式与生成器用法分析
Aug 02 Python
Django框架设置cookies与获取cookies操作详解
May 27 Python
pandas DataFrame行或列的删除方法的实现示例
Aug 02 Python
Python学习笔记之While循环用法分析
Aug 14 Python
python网络爬虫 Scrapy中selenium用法详解
Sep 28 Python
在ipython notebook中使用argparse方式
Apr 20 Python
python eventlet绿化和patch原理
Nov 21 Python
基于Pygame实现简单的贪吃蛇游戏
Dec 06 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颜色转换函数hex-rgb(将十六进制格式转成十进制格式)
2013/09/23 PHP
CodeIgniter使用phpcms模板引擎
2013/11/12 PHP
PHP实现的连贯操作、链式操作实例
2014/07/08 PHP
PHP中substr函数字符串截取用法分析
2016/01/07 PHP
php修改数组键名的方法示例
2017/04/15 PHP
PHP echo()函数讲解
2019/02/15 PHP
PHP实现的只保留字符串首尾字符功能示例【隐藏部分字符串】
2019/03/11 PHP
Yii2框架自定义类统一处理url操作示例
2019/05/25 PHP
jQuery一步一步实现跨浏览器的可编辑表格,支持IE、Firefox、Safari、Chrome、Opera
2009/08/28 Javascript
js 创建快捷方式的代码(fso)
2010/11/19 Javascript
js 关键词高亮(根据ID/tag高亮关键字)案例介绍
2013/01/21 Javascript
快速查找数组中的某个元素并返回下标示例
2013/09/03 Javascript
js实现简单div拖拽功能实例
2015/05/12 Javascript
检查表单元素的值是否为空的实例代码
2016/06/16 Javascript
jQuery简单实现点击文本框复制内容到剪贴板上的方法
2016/08/01 Javascript
微信小程序实现提交input信息到后台的方法示例
2019/01/19 Javascript
详解vue几种主动刷新的方法总结
2019/02/19 Javascript
Vue中Table组件Select的勾选和取消勾选事件详解
2019/03/19 Javascript
vue elementUI 表单校验功能之数组多层嵌套
2019/06/04 Javascript
利用JS代码自动删除稿件的普通弹幕功能
2019/09/20 Javascript
使用vue-router切换页面时实现设置过渡动画
2019/10/31 Javascript
详解用python写网络爬虫-爬取新浪微博评论
2019/05/10 Python
numpy concatenate数组拼接方法示例介绍
2019/05/27 Python
使用python实现kNN分类算法
2019/10/16 Python
css 如何让背景图片拉伸填充避免重复显示
2013/07/11 HTML / CSS
Dillard’s百货官网:Dillards.com
2018/05/26 全球购物
波兰汽车配件网上商店:iParts.pl
2020/09/08 全球购物
.NET初级开发工程师面试题(包括Javascript)
2012/08/22 面试题
大学生应聘推荐信范文
2013/11/19 职场文书
医科大学生的自我评价
2013/12/04 职场文书
总经理人事任命书
2014/06/05 职场文书
运动会通讯稿50字
2015/07/20 职场文书
2019经典广告词集锦!
2019/07/02 职场文书
微信小程序实现录音Record功能
2021/05/09 Javascript
《辉夜大小姐想让我告白》第三季正式预告
2022/03/20 日漫
【海涛教你打DOTA】死灵飞龙第一视角解说
2022/04/01 DOTA