You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python如何去除DataFrame中object类型列的引号并转换为float类型

问题原因

你当前代码仅替换了双引号,而报错提示的异常值'5769842393258'外层包裹的是单引号,未被清理的单引号导致float类型转换失败。

正确处理代码

推荐用pandas原生字符串处理方法,容错性更高:

import pandas as pd
import numpy as np

# 同时清理字段值中的所有单引号、双引号
df["Customer id"] = df["Customer id"].str.replace(r"['\"]", "", regex=True)
# 转换为float类型,errors参数可根据需求调整
# errors="coerce":无法转换的值自动设为NaN,不抛出报错
# errors="raise":遇到无法转换的值直接抛出异常,和原生转换逻辑一致
df["Customer id"] = pd.to_numeric(df["Customer id"], errors="coerce")

如果要保留你原本的numpy转换写法,仅修改替换规则即可:

df["Customer id"]  = df["Customer id"].replace(r"['\"]", '', regex=True)
df["Customer id"] = np.array(df["Customer id"], dtype=float)

内容的提问来源于stack exchange,提问作者SEIKO5

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 00:15:04