【发布时间】:2021-12-05 21:09:42
【问题描述】:
假设我们有一个这样的数据框,并希望在满足某些条件时删除列。
df = pd.DataFrame(
np.arange(2, 14).reshape(-1, 4),
index=list('ABC'),
columns=pd.MultiIndex.from_arrays([
['data1', 'data2','data1','data2'],
['F', 'K','R','X'],
['C', 'D','E','E']
], names=['meter', 'Sleeper','sweeper'])
)
df
然后假设我们只想在 meter == data1 和 sweeper == E 时删除 cols
所以我尝试了
df = df.drop(('data1','E'),axis = 1)
KeyError: 'E'
第二次尝试
df.drop(('data1','E'), axis = 1, level = 2)
KeyError: "在关卡中找不到标签 [('data1', 'E')]"
【问题讨论】:
标签: python pandas dataframe multi-index