weixin_39017744
weixin_39017744
采纳率71.1%
2019-11-10 17:16

请问如何将python中dataframe里的string全部转化为float?

5

用pandas读取csv后,做聚类的时候报错如下:could not convert string to float: 'CWT'。把csv里面的这个全都替换掉之后就会显示新别的string无法转换。请问如何一次全都转换成float?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

2条回答

  • weixin_42678268 bj_0163_bj 2年前

    使用df.astype()强制类型转换,df['col']=df['col'].astype('float')

    点赞 5 评论 复制链接分享
  • caozhy 回答这么多问题就耍赖把我的积分一笔勾销了 2年前

    你的dataframe里面都是什么内容,是不是有CWT这种文本,而不是全数字,你可以用
    import re
    for i in range(0, len(df))
    if re.match(r"(-){0,1}\d+(.\d+){0,1}", df[i][字段],0):
    df[i][字段] = float(df[i][字段] )
    else
    df[i][字段] = 默认值

    点赞 1 评论 复制链接分享