【发布时间】:2016-06-03 20:48:29
【问题描述】:
我有一个带有 Multi 的 pandas.DataFrame,例如:
In [298]: pd.DataFrame(index=pd.MultiIndex.from_tuples([['a', 1], ['a', 2], ['b', 1], ['b', 3]]), data={'x': 1})
Out[298]:
x
a 1 1
2 1
b 1 1
3 1
当我想重新分配一个子数据帧时,即 (df.loc['a']),我得到一个奇怪的输出:
In [300]: df.loc['a'] = df.loc['a']
In [301]: df
Out[301]:
x
a 1 NaN
2 NaN
b 1 1
3 1
这个例子很简单,我显然打算让重新分配更复杂。
正常吗?如何重新分配使用 MultiIndex 索引的子数据帧?
【问题讨论】:
-
你可以这样做:
df.loc[df.index.get_level_values(0) == 'a'] = df
标签: python pandas multi-index