Python:从DataFrame多索引中删除列



我有以下数据帧:

data_raw (201 x 600)
Column Level 0: ROE_1 ROE_2 Test_EQ_1
Column Level 1: A B C D E F G H I J .... (200 items)
Index Level 0: 1 2 3 4... (201 items)

我正在尝试删除Test_EQ_1列。

使用后:

data_raw = data_raw.drop("Test_EQ_1", axis=1, level=0)

数据帧的尺寸减少到201x400(正如预期的那样(。所有具有Test_EQ_1的列都将消失(如预期的那样(。

然而,当我使用以下内容时:

data_raw.columns.levels[0]

我获得:

Index(['ROE_1', 'ROE_2', **'Test_EQ_1'**], dtype='object', name='Variable')

这将为我的代码的后面部分生成问题,因为Test_EQ_1已从数据帧中删除,但在我检查列时仍然存在。

有没有办法";完全";是否删除Test_EQ_1

找到了一个答案:重新定义列:

multi = data_raw.columns.to_list()
data_raw.columns = pd.MultiIndex.from_tuples(multi)

最新更新