Pandas 使用 loc 的浮点值问题
Pandas float value issues using loc
这对于 Pandas 习惯于浮动数字但一直在努力的用户来说可能是一个简单的问题,我非常感谢您的建议。
我无法检索我在使用 .loc 时保存到数据框中的值
请问有哪位大侠解释一下帮忙解决吗?谢谢!
dict = [{'me': 0.094092328767113}]
df = pandas.DataFrame(dict)
df['me']
Out[32]:
0 0.094092328767113
Name: me, dtype: float64
df.loc[0,'me']
Out[33]: 0.094092328767113001
您可以使用基本的字符串格式 -
>>> '{:.15f}'.format(df.loc[0,'me'])
>>> '0.094092328767113'
这将导致字符串数据类型。此外,如果需要将 numpy
用作 -
,则可以将其转换为浮点数
>>> np.float64('{:.15f}'.format(df.loc[0,'me']))
>>> 0.094092328767113
最终修复归结为升级 Pandas 和 NumPy 的版本,正如 OP 在评论中确认的那样。
这对于 Pandas 习惯于浮动数字但一直在努力的用户来说可能是一个简单的问题,我非常感谢您的建议。
我无法检索我在使用 .loc 时保存到数据框中的值
请问有哪位大侠解释一下帮忙解决吗?谢谢!
dict = [{'me': 0.094092328767113}]
df = pandas.DataFrame(dict)
df['me']
Out[32]:
0 0.094092328767113
Name: me, dtype: float64
df.loc[0,'me']
Out[33]: 0.094092328767113001
您可以使用基本的字符串格式 -
>>> '{:.15f}'.format(df.loc[0,'me'])
>>> '0.094092328767113'
这将导致字符串数据类型。此外,如果需要将 numpy
用作 -
>>> np.float64('{:.15f}'.format(df.loc[0,'me']))
>>> 0.094092328767113
最终修复归结为升级 Pandas 和 NumPy 的版本,正如 OP 在评论中确认的那样。