为什么我得到一个ValueError:不能将字符串转换为浮点错误?



我试图计算一个熊猫数据框的新列,它在另一个数据框中使用一个列,使用两个变量来改变值,给出一个新值。这是执行计算的当前代码:

# Calculate the Max Stress
jac_output['Max Stress /MPa'] = (jac_input['Max Load'][::-1] + (float(load_zero))) / float(area*1000)

地点:

load zero = 1.5
area = 45.345

然而,每次我尝试执行它,我得到这个错误:

ValueError: could not convert string to float:
'45.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.34545.3

(45.34534重复了很长一段时间)为什么它似乎认为我的区域是字符串?它会计算出如果我去掉/ float(area*1000)部分的值,但这不是我想要的结果。任何帮助将非常感激!

area为字符串;将字符串相乘将使其重复该次数。

>>> area = "45.345"
>>> area * 5
'45.34545.34545.34545.34545.345'

你要做的是将其转换为float然后乘以它:

>>> float(area) * 1000
45345.0

最新更新