如何将列表中的 Decimal('0.303440') 等值转换为 Python Pandas 中的浮点数?

问题描述 投票:0回答:1

我的 Python 列表如下:

    my_list = [[Decimal('0.303440'), 0.0, 2.0, 8.0, 1.0],
 [109.0, 10.0, 0.0, 0.0, 3.0],
 [52.0, 5.0, 99.0, 0.0, Decimal('0.445378')]]
  • 正如您所见,大多数值都是浮点数,但有些值如下:

    Decimal('0.303440')

  • 如何将列表中的所有值(如:Decimal('0.303440'))转换为浮点数(如:0.303440)。

  • 当然,在我的真实列表中,我还有很多其他值,例如:

    Decimal('0.303440')
    ,我们必须 使用完全自动化,因为我无法手动写出它们。

因此,我需要如下所示的内容:

    my_list = [[0.303440, 0.0, 2.0, 8.0, 1.0],
 [109.0, 10.0, 0.0, 0.0, 3.0],
 [52.0, 5.0, 99.0, 0.0, 0.445378]]

如何在 Python Pandas 中做到这一点?

python pandas list decimal
1个回答
0
投票

您可以使用简单的嵌套列表理解:

df = df.applymap(lambda x: float(x) if isinstance(x, Decimal) else x)

代码演示

© www.soinside.com 2019 - 2024. All rights reserved.