Python 使用pandas中的MultiIndex.from_元组添加附加级别
我正试图在python的多级索引中添加一个额外的级别。我的数据框如下所示Python 使用pandas中的MultiIndex.from_元组添加附加级别,python,pandas,header,multi-index,Python,Pandas,Header,Multi Index,我正试图在python的多级索引中添加一个额外的级别。我的数据框如下所示 df1=pd.DataFrame(np.array([[A',1,2,3],'B',-4,5,-6],'d',7,0,9]),columns=[d','A','B','c']) 我使用以下代码来添加多个级别 df1.columns=pd.MultiIndex.from_元组(((“first”,“D”),(“first”,“a”),(“second”,“b”),(“second”,“c”)) 现在,我想从不同的数据帧在第一
df1=pd.DataFrame(np.array([[A',1,2,3],'B',-4,5,-6],'d',7,0,9]),columns=[d','A','B','c'])
我使用以下代码来添加多个级别
df1.columns=pd.MultiIndex.from_元组(((“first”,“D”),(“first”,“a”),(“second”,“b”),(“second”,“c”))
现在,我想从不同的数据帧在第一层和第二层之间添加另一层
df2=pd.DataFrame(np.array([[D',1],[a',2],[b',1],[c',3]),columns=[11','22'])
所需的输出应如下所示。我想知道我怎样才能做到这一点。非常感谢您事先的帮助
first second
1 2 1 3
D a b c
A 1 2 3
B -4 5 -6
d 7 0 9
多个索引的更改总是令人头痛
out = df1.T.assign(a=[1,2,1,3]).set_index('a',append=True).T.reorder_levels([0,2,1],axis=1)
Out[247]:
first second
a 1 2 1 3
D a b c
0 A 1 2 3
1 B -4 5 -6
2 d 7 0 9
尝试:
输出:
first second
1 2 1 3
D a b c
0 A 1 2 3
1 B -4 5 -6
2 d 7 0 9
实际上,直接重新分配列会发出警告,但什么也没有做,因此需要进行调整。这
1 2 1 3
从何而来?我有一个包含这些详细信息的表。df2=pd.DataFrame(np.array([['D',1],'a',2],'b',1],'c',3]),columns=['11','22'])谢谢,我可以使用DataFrame来添加级别吗?df2=pd.DataFrame(np.array([[D',1],[a',2],[b',1],[c',3]),columns=['11','22']))
first second
1 2 1 3
D a b c
0 A 1 2 3
1 B -4 5 -6
2 d 7 0 9