Python 合并具有不同索引的数据帧
我有2个数据帧,我想合并,但我无法让它像我想要的那样工作Python 合并具有不同索引的数据帧,python,python-3.x,pandas,Python,Python 3.x,Pandas,我有2个数据帧,我想合并,但我无法让它像我想要的那样工作 ExitType ExitSignal ExitTime ExitPrice 0 NaN NaN NaN NaN 1 ExitShort Profit Target 7:00:00 AM 2.8065 2 NaN NaN NaN N
ExitType ExitSignal ExitTime ExitPrice
0 NaN NaN NaN NaN
1 ExitShort Profit Target 7:00:00 AM 2.8065
2 NaN NaN NaN NaN
3 ExitShort Profit Target 8:00:00 AM 2.7772
4 NaN NaN NaN NaN
5 ExitShort Profit Target 8:30:00 AM 2.7533
6 NaN NaN NaN NaN
7 ExitShort Stop Loss 10:00:00 AM 2.7700
8 NaN NaN NaN NaN
9 ExitLong Stop Loss 9:30:00 AM 2.8135
10 NaN NaN NaN NaN
11 ExitShort Profit Target 6:30:00 AM 2.7200
[5816 rows x 4 columns]
这个数据框就是“条目”
Trade # Order # Type Signal Date Time Price \
0 1 1 EntryShort PChSE 1/7/2008 7:00:00 AM 2.8304
2 2 3 EntryShort PChSE 1/7/2008 7:30:00 AM 2.8011
4 3 5 EntryShort PChSE 1/7/2008 8:00:00 AM 2.7772
6 4 7 EntryShort PChSE 1/7/2008 8:30:00 AM 2.7533
8 5 9 EntryLong PChLE 1/9/2008 8:30:00 AM 2.8302
10 6 11 EntryShort PChSE 1/10/2008 5:30:00 AM 2.7439
[2908 rows x 16 columns]
我希望从“exits”数据框中获取列,并将它们添加到“entries”数据框中,而不包括具有“NaN”值的行。例如,“extries”数据框第0行应添加第1行“exits”数据框中的列
如何才能做到这一点?鉴于您的表似乎有一个未说明的顺序,即出口中的每一行都与条目中的对应行相匹配,您可以尝试以下操作:
pd.concat([entries, exits.dropna()], axis=1)
如果exits数据框中没有
Trade
或Order
,则无法加入表。虽然出口的大小是条目大小的两倍,但可能存在未说明的顺序。这在对两个数据帧执行reset_index()后起作用。