python中dtype是object是什么意思_python – Pandas:将dtype’object’转换为int

这篇博客讨论了在Pandas中遇到的问题,即数据框(DataFrame)中的列虽然包含字符串、日期和整数,但被识别为'object' dtype。作者成功地将日期列转换为datetime dtype,但在尝试将包含整数的列转换为int时遇到TypeError。问题源于数据可能包含非数值类型的值,例如'java.lang.Long',导致astype(int)失败。同样,将字符串列转换为字符串没有明显效果,仍显示为'object' dtype。
摘要由CSDN通过智能技术生成

我已经在Pandas中读取了一个SQL查询,并且这些值以dtype’object’形式出现,尽管它们是字符串,日期和整数.我能够将日期’对象’转换为Pandas datetime dtype,但是在尝试转换字符串和整数时遇到错误.

这是一个例子:

>>> import pandas as pd

>>> df = pd.read_sql_query('select * from my_table', conn)

>>> df

id date purchase

1 abc1 2016-05-22 1

2 abc2 2016-05-29 0

3 abc3 2016-05-22 2

4 abc4 2016-05-22 0

>>> df.dtypes

id object

date object

purchase object

dtype: object

将df [‘date’]转换为datetime有效:

>>> pd.to_datetime(df['date'])

1 2016-05-22

2 2016-05-29

3 2016-05-22

4 2016-05-22

Name: date, dtype: datetime64[ns]

但是在尝试将df [‘purchase’]转换为整数时出错:

>>> df['purchase'].astype(int)

....

pandas/lib.pyx in pandas.lib.astype_intsafe (pand

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值