我是python的新手,正在尝试解决某些问题。我遇到一种情况,我有2个数据框,要合并以达到所需的数据框。
我尝试了.merge和.join,但这两个都无法获得想要的结果。
让我们假设我有以下情况:
lt = list(['a','b','c','d','a','b','a','b'])
df = pd.DataFrame(columns = lt)
data = [[10,11,12,12], [15,14,12,10]]
df1 = pd.DataFrame(data, columns = ['a','b','c','d'])
我希望将df和df1合并,并以df2的形式获得所需的数据帧:
a b c d a b a b
0 10 11 12 12 10 11 10 11
1 15 14 12 10 15 14 15 14
如果您不介意列的更改顺序,那只是一个正确的联接。唯一的警告是,这些操作是在行而不是列上执行的,因此您需要先转置:
In [44]: df.T.join(df1.T, how='right').T
Out[44]:
a a a b b b c d
0 10 10 10 11 11 11 12 12
1 15 15 15 14 14 14 12 10