【发布时间】:2019-05-03 21:13:06
【问题描述】:
我有一个带有多索引列的 DataFrame:
df = pd.DataFrame(np.arange(12).reshape(3,-1))
df.columns = [['A', 'A', 'B', 'B'], [0, 1, 0, 1]]
print(df)
看起来像这样:
A B
0 1 0 1
0 0 1 2 3
1 4 5 6 7
2 8 9 10 11
我想做类似df['C'] = df['B'] 的事情来获得:
A B C
0 1 0 1 0 1
0 0 1 2 3 2 3
1 6 7 8 9 8 9
2 12 13 14 15 14 15
我收到了ValueError: Wrong number of items passed 2, placement implies 1。
我也尝试过df.loc[:, slice('C', None)] = df['B'],但没有成功。
其实我的情况稍微复杂一点:我在多索引中多了一层(L0 I),我想将df['L0 I', 'B']复制到df['L0 II', 'B'](L0 II不存在)。
【问题讨论】:
标签: python pandas dataframe multi-index