gpt4 book ai didi

python - 具有 None 值的 Pandas MultiIndex

转载 作者:行者123 更新时间:2023-12-04 09:18:09 25 4
gpt4 key购买 nike

我正在使用 MultiIndex,数据来自数据库。我想用作键的一些值是空的。我发现这会导致数据被省略。例如。

import numpy as np
import pandas as pd
import sys

print(sys.version) # 3.7.3
print(pd.__version__) # 1.0.3
idx = pd.MultiIndex.from_tuples([('A', 'a'), ('A', 'b'), ('B', 'a'), ('B', ' '), ('C', 'a'), ('C', None), ('D', '')], names=['Level 1', 'Level 2'])
print(idx)
d = {'X':{('A','a'):1, ('A','b'):2, ('B','a'):3, ('B',' '):4, ('C','a'): 5, ('C',None): 6, ('D',''):7},
'Y':{('A','a'):1, ('C',None): 6, ('D',''):7}
}
df = pd.DataFrame(data=d, index=idx)
print(df)
结果是:
MultiIndex([('A', 'a'),
('A', 'b'),
('B', 'a'),
('B', ' '),
('C', 'a'),
('C', nan),
('D', '')],
names=['Level 1', 'Level 2'])
X Y
Level 1 Level 2
A a 1.0 1.0
b 2.0 NaN
B a 3.0 NaN
4.0 NaN
C a 5.0 NaN
NaN NaN NaN
D 7.0 7.0
我的问题是 C/None 行,它给了我 NaN而不是 6。其他空白值(空字符串、空格)没有这种行为。
这是预期的还是我需要以某种方式配置 MultiIndex?

最佳答案

当我们在索引中有 NaN 时,这是不安全的:github1 github2
对于简单的修复,您可以将数据加载到数据框,然后 fillnaset_index背部

关于python - 具有 None 值的 Pandas MultiIndex,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63144792/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com