假设我有两个数据帧,是否可以按列连接它们,但是第二个数据帧在连接数据帧中显示为单个列?
我正在寻找:
df_A:
C1 C2 C3
1 2 3
11 22 33
df_B:
D1 D2 D3
3 4 5
33 44 55
Concatenated:
C1 C2 C3 df_B
D1 D2 D3
1 2 3 3 4 5
11 22 33 33 44 55
答案 0 :(得分:3)
您可以构建MultiIndex以创建具有所需外观的DataFrame:
import pandas as pd
df_A = pd.DataFrame([(1,2,3), (11,22,33)], columns=['C1', 'C2', 'C3'])
df_B = pd.DataFrame([(3,4,5), (33,44,55)], columns=['D1', 'D2', 'D3'])
result = pd.concat([df_A, df_B], axis=1)
result.columns = pd.MultiIndex.from_tuples([(col,'') for col in df_A]
+ [('df_B', col) for col in df_B])
print(result)
产量
C1 C2 C3 df_B
D1 D2 D3
0 1 2 3 3 4 5
1 11 22 33 33 44 55