Python 合并两个数据帧

Python 合并两个数据帧,python,pandas,dataframe,merge,Python,Pandas,Dataframe,Merge,我有以下合并问题: 我有一个行业相关数据的时间序列:60个不同行业多年的每周利润率,如下所示: industry = pd.DataFrame({'Ind0': ['01', '02', '03', '04'], 'Ind1': ['11', '12', '13', '14'], 'Ind2': ['21', '22', '23', '24'], 'Ind3': ['31', '32', '33', '34']}) result = pd.DataFram

我有以下合并问题:

我有一个行业相关数据的时间序列:60个不同行业多年的每周利润率,如下所示:

industry = pd.DataFrame({'Ind0': ['01', '02', '03', '04'],                   
'Ind1': ['11', '12', '13', '14'],
'Ind2': ['21', '22', '23', '24'],
'Ind3': ['31', '32', '33', '34']})
result = pd.DataFrame({'Stock0': ['01', '02', '03', '04'],                   
'Stock1': ['11', '12', '13', '14'],
'Stock2': ['21', '22', '23', '24'],
'Stock3': ['31', '32', '33', '34'],
'Stock4': ['01', '02', '03', '04'],
'Stock5': ['11', '12', '13', '14']})
我的第二个数据框架由1000只股票及其各自的行业组成(每只股票只属于一个行业)

我想创建一个新的数据框架,其中包含来自股票所属正确行业的每个股票的行业时间序列,例如:

industry = pd.DataFrame({'Ind0': ['01', '02', '03', '04'],                   
'Ind1': ['11', '12', '13', '14'],
'Ind2': ['21', '22', '23', '24'],
'Ind3': ['31', '32', '33', '34']})
result = pd.DataFrame({'Stock0': ['01', '02', '03', '04'],                   
'Stock1': ['11', '12', '13', '14'],
'Stock2': ['21', '22', '23', '24'],
'Stock3': ['31', '32', '33', '34'],
'Stock4': ['01', '02', '03', '04'],
'Stock5': ['11', '12', '13', '14']})
我尝试了许多合并/连接方法,但没有成功。非常感谢您的帮助。

这就是您想要的吗

stocks.T.merge(industry.T,left_on=0,right_index=True).drop(['key_0','0_x'],axis=1).rename(columns={'0_y':0}).T
Out[189]: 
  Stock0 Stock4 Stock1 Stock5 Stock2 Stock3
0     01     01     11     11     21     31
1     02     02     12     12     22     32
2     03     03     13     13     23     33
3     04     04     14     14     24     34
这是你想要的吗

stocks.T.merge(industry.T,left_on=0,right_index=True).drop(['key_0','0_x'],axis=1).rename(columns={'0_y':0}).T
Out[189]: 
  Stock0 Stock4 Stock1 Stock5 Stock2 Stock3
0     01     01     11     11     21     31
1     02     02     12     12     22     32
2     03     03     13     13     23     33
3     04     04     14     14     24     34

@NiccolaTartaglia正在考虑您需要什么,以及您已经知道的方法是什么,并将数据转换为您熟悉的:)顺便说一句,快乐编码:)谢谢温家宝,非常优雅的解决方案。我会继续练习,希望能很快自己解决这类问题。谢谢@NiccolaTartaglia希望看到您的解决方案soon@NiccolaTartaglia只需考虑您需要什么,以及您已经知道的方法是什么,并将数据转换为您熟悉的:)顺便说一句,快乐编码:)谢谢温家宝,非常优雅的解决方案。我会继续练习,希望能很快自己解决这类问题。谢谢@NiccolaTartaglia希望尽快看到您的解决方案