Pandas销售分析帮助值错误:无法将字符串转换为浮点:“”

2024-04-20 08:12:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我目前正在一个excel文件上运行一个销售分析,大约有500笔交易。我有一个名为“销售价格”的类别,应该作为浮动来阅读。熊猫将数据类型作为对象读入,并在尝试使用以下命令将数据类型更改为浮点时:

df['Sale Price'].fillna(0).astype(float)

我得到以下错误:

ValueError: could not convert string to float: ''

我尝试了多种命令组合,例如:

df.loc[pd.to_numeric(df['Sale Price'], errors='coerce').isnull()]

以及:

pd.to_numeric(df['Sale Price']).astype(int)

为了将列转换为浮点,但现在我认为问题在于如何读入数据。我使用了基本的:

df = pd.read_excel('...') 

希望有人能帮助我澄清这个问题的来源,因为我已经被困了一段时间。谢谢大家!


Tags: 文件to命令df交易salefloatexcel
2条回答

在将空字符串更改为浮动之前,可以将其替换为0:

df["Sale Price"] = df["Sale Price"].astype(str).str.strip().replace("",0).astype(float)

您的销售价格中有一个空字符串。如错误所示

ValueError: could not convert string to float: ''

要修复第一次运行,请执行以下操作:

df['Sale Price'] = df['Sale Price'].where(df['Sale Price'] != '', 0)

这将用零替换任何空字符串

相关问题 更多 >