我曾经能够分配给这样的系列:
import pandas as pd
pd.Series()["aaa"]= True # regular indexing
pd.Series().loc["aaa"]= True # regular indexing
pd.Series()[("aaa",123)]= True # Multi indexing
pd.Series().loc[("aaa",123)]= True # Multi indexing
但在大熊猫24.0及更高版本中,两个:
pd.Series()[("aaa",123)]= True
pd.Series().loc[("aaa",123)]= True
给我:
KeyError: u"None of [Index([u'aaa', 1], dtype='object')] are in the [index]"
那么-我如何在熊猫0.24.1中使用多重索引分配一个系列?
更新:--------- 有效的错误参考:https://github.com/pandas-dev/pandas/issues/25290#issuecomment-463206942
答案 0 :(得分:1)
首先初始化一个正确尺寸的空MultiIndex
,然后它将起作用:
import pandas as pd
idx = pd.MultiIndex(levels=[[], []], codes=[[], []])
s = pd.Series(index=idx)
s.loc[("aaa",123)]= True
print(s)
#aaa 123 True
#dtype: bool