找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 8474|回复: 2

[求助] 请问pandas 里dtype 的str和object区别是什么呢

9

主题

27

帖子

27

积分

贫民

积分
27
falseform 发表于 2018-6-12 18:45:28 | 显示全部楼层 |阅读模式
因为平时查看dataframe 的info,字符串格式的内容都显的是object,后来做数据处理时候发现有个小问题

relatedobjid
5328242781
5328280661
5328282538
5328350087
5328398153
5328452557
5328452719
5328454338
5328463804
5328511640
5328512890
5328517629
5328535452
5328541156


aa=pd.read_clipboard()
以上一串数据读入pandas自动识别为数字格式

我想进行','.join(aa.relatedobjid) 这种将这列合并的操作会报错,因为数字格式不能和字符串格式合并成
'5328242781,5328280661,5328282538,5328350087,5328398153,5328452557,5328452719,5328454338,5328463804,5328511640,5328512890,5328517629,5328535452,5328541156'
这种结果

然后我就把它转为字符串格式

aa=aa.relatedobjid.astype(object)

结果发现还不行,后来费半天劲发现要

aa=aa.relatedobjid.astype(str)
才是正确的结果,这就纠结了,因为思维定式平时看到的类型都是object 但是为什么dtype是 ' object'不行呢? 他们有什么区别




回复

使用道具 举报

0

主题

956

帖子

956

积分

圣骑士

积分
956
sheeboard 发表于 2018-6-13 16:04:55 | 显示全部楼层
本帖最后由 sheeboard 于 2018-6-13 16:17 编辑

这个pandas的对象对应的是python的str
http://pbpython.com/pandas_dtypes.html这个参考看看

回复 支持 反对

使用道具 举报

9

主题

27

帖子

27

积分

贫民

积分
27
falseform  楼主| 发表于 2018-6-14 14:38:54 | 显示全部楼层
sheeboard 发表于 2018-6-13 16:04
这个pandas的对象对应的是python的str
http://pbpython.com/pandas_dtypes.html这个参考看看

这个链接的意思是pandas的dtype和numpy的dtype也不一样吗
如下图, 我们astype的反而是 python type的类型 而不是pandas type的类型,好混乱,numpy基本不用,但是pandas我用的较多,以为和numpy的dtype一致,结果他们也不一致,好混乱


Snipaste_2018-06-14_14-36-15.png
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表