我有两个熊猫数据帧:
数据帧A:
date ticker return
2017-01-03 CRM 0.018040121229614625
2017-01-03 MSFT -0.0033444816053511683
2017-01-04 CRM 0.024198086662915008
2017-01-04 MSFT -0.0028809218950064386
2017-01-05 CRM -0.0002746875429199269
2017-01-05 MSFT 0.0017687731146487362
数据帧B:
date ticker return
2017-01-03 CRM 0.018040120991250852
2017-01-03 MSFT -0.003344466975803595
2017-01-04 CRM 0.024198103213211475
2017-01-04 MSFT -0.0028809268004892363
2017-01-05 CRM -0.00027464144673694513
2017-01-05 MSFT 0.0017687829680113065
现在我需要第三个“整合”数据帧:
有什么建议吗?你知道吗
这是用可运行代码编辑的新答案
即使行数不相等,下面的代码也可以工作。它将首先获取两个数据帧上的公共行,然后为所需列找到正确的值
旧答案
你可以这样做
如果返回值的绝对值小于df2中的同一行,则它将返回一个从df1中取值的序列,否则它将从df2中取值
然后您可以替换df1或df2的列或它们的副本,以获得所需的数据帧
在
return
上尝试concat+groupby
,并用key=abs
返回min
:您可以使用
concat
连接这两个dataframe
,然后使用groupby
按ticker
分组,并获得每个组的最小值:相关问题 更多 >
编程相关推荐