python数据类型转换str转成float_Python根据dataframe列中的数据将对象数据类型转换为integer、string或float...

在Python中,尝试将CSV导入的DataFrame列转换为更具体的类型时遇到错误。尝试将'cost'列从object转为int,但遇到了'ValueError',因为数据包含美元符号。同样,尝试将'usage'列转换为float时,百分比符号导致了错误。要解决这些问题,需要先清理数据,移除货币符号和百分号,然后才能进行类型转换。
摘要由CSDN通过智能技术生成

我有以下问题。我有一个dataframe,它有各种类型的列(int、float、string等),但是由于它们是使用.csv文件导入python的,所以所有列都显示为object数据类型。示例如下:print df_centers

输出:center name ID state activity type cost usage

Bay area recreational facility 10019 LA swimming $15 0.5%

Ith area recreational facility 10020 NY basketball $200 100%

所有这些列都有data type=object,我正在尝试将对象数据类型转换为它们相关且更有意义的数据类型。示例如下:df_centers['cost'] = df_centers['cost'].astype('int')

我试图在cost字段上进行INT转换的原因是,稍后我必须对其进行一些分析,但python返回的错误消息如下:ValueError: invalid literal for long() with base 10: '$15'

我还尝试将使用率转换为0.5%以浮动,并返回错误消息:df_centers['usage'] = df_centers['usage'].astype('float')

我得到的输出是:invalid literal for float(): 100%

关于如何将此数据类型从对象转换为更相关的类型,有何建议?

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值