【问题标题】:dictionaries with NaN key to pandas series熊猫系列的 NaN 键字典
【发布时间】:2017-12-15 22:15:09
【问题描述】:

我正在尝试通过将包含索引和数据对的字典传递给 Pandas 系列来构建它。这样做时,我注意到一个有趣的怪癖。当字典包含带有关联值的 NaN 键时,pandas Series 会在索引中保留 NaN 键,但也会将相应的值设置为 NaN

import pandas as pd
d = {np.nan: 3500.0, 66485174.0: 1.0}
d = pd.Series(d, dtype='float64')

在上面的示例中,3500.0 将被 pd.Series 设置为 NaN
我将 pandas 0.20.2 与 python 2.7 一起使用。

有人知道为什么会这样吗?我的直觉是NaN 可能被视为超过 64 位的无限数,因此可能存在一些格式问题

【问题讨论】:

  • 不确定行为。但是,pd.Series(d.values(), index=d.keys()) 会为你工作。
  • 这很有趣!我不怀疑这是故意的。确认@JohnGalt,但我使用了pd.Series(list(d.values()), index=d.keys())
  • 感谢您的反馈。是的,这很奇怪。另外,pd.DataFrame函数也不存在同样的问题:pd.DataFrame.from_dict(d, orient='index',dtype='float64')
  • 在 pandas 0.23.3 中绝对固定。

标签: python python-2.7 pandas dictionary series


【解决方案1】:

问题已在 pandas 0.23.3 中得到修复(已在 cmets 中回答)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-09-22
    • 1970-01-01
    • 2013-12-12
    • 1970-01-01
    • 2020-10-05
    • 2019-09-28
    • 2017-09-23
    相关资源
    最近更新 更多