python-3.x - 将列表字符串转换为 float 列表 [pandas]

标签 python-3.x pandas

在 Pandas 中导入时,数据如下所示:

>>> BOM.PriceQty['substrate']
'[200.0, 300.0, 500.0]'

如何将其转换为浮点数列表?
试过convert_objact:
>>> BOM.PriceQty['substrate'].convert_object(convert_numeric=True)

Traceback (most recent call last): File "", line 1, in AttributeError: 'str' object has no attribute 'convert_object'



谢谢!

最佳答案

这可以很好地将表示浮点数列表的字符串转换为实际的浮点数列表:

s = '[200.0, 300.0, 500.0]'
l = [float(x.strip(' []')) for x in s.split(',')]
strip函数删除任何 ' ' , '[' , 和 ']' split 产生的字符。

结果:
In [1]: l
Out[1]: [200.0, 300.0, 500.0]

如果要将此转换应用于整个列,apply它作为 lambda功能:
BOM.PriceQty.apply(lambda s: [float(x.strip(' []')) for x in s.split(',')])

关于python-3.x - 将列表字符串转换为 float 列表 [pandas],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35288052/

相关文章:

python - Pandas 在正确的时间增加值(value)

Python - 如何将 while 循环中的值存储到 pandas 数据框中?

python - Spyder 上输入提示前的空行

python - 解决Python之谜

python - 将 CSV 拆分为文件

python - 导入 pandas 模块使我的脚本停止工作

python - 根据定界符吐出一列

python - 带有 MultiIndex : efficient way of checking duplicate elements in one of the indices 的 Pandas DataFrame

python - 在其他 2d 列表中搜索数组元素并在 python 中计算子列表

python - 如何在 PyQt5 中制作终端控制台(终端模拟器)?