2 つの pandas データフレームがあります: dfLeft と dfRight で、日付をインデックスとして使用します。
df左:
cusip factorL
date
2012-01-03 XXXX 4.5
2012-01-03 YYYY 6.2
....
2012-01-04 XXXX 4.7
2012-01-04 YYYY 6.1
....
dfRight:
idc__id factorR
date
2012-01-03 XXXX 5.0
2012-01-03 YYYY 6.0
....
2012-01-04 XXXX 5.1
2012-01-04 YYYY 6.2
どちらも形状が近い(121900,3)
次のマージを試しました:
test = pd.merge(dfLeft, dfRight, left_index=True, right_index=True, left_on='cusip', right_on='idc__id', how = 'inner')
これにより、 test は の形になり(60643500, 6)
ました。
ここで何がうまくいかないのかについての推奨事項はありますか? 日付と cusip/idc_id の両方に基づいてマージしたい。注: この例では先端が並んでいますが、実際にはそうではない場合があります。
ありがとう。
期待される出力テスト:
cusip factorL factorR
date
2012-01-03 XXXX 4.5 5.0
2012-01-03 YYYY 6.2 6.0
....
2012-01-04 XXXX 4.7 5.1
2012-01-04 YYYY 6.1 6.2