【问题标题】:Pandas dataframe left-merge with different dataframe sizes具有不同数据框大小的 Pandas 数据框左合并
【发布时间】:2017-05-30 23:27:47
【问题描述】:

我有一个玩具库存预测器,并且不时使用数据框保存结果。在第一个结果集之后,我想附加我的第一个数据框。这是我的工作:

  1. 使用预测结果创建第一个数据帧
  2. 按预测性能降序排列
  3. 保存到 csv,不带索引

  4. 使用新数据,读取结果 csv 并尝试左合并,目标是将新的预测性能附加到正确的股票代码

df=pd.merge(df, df_new[['ticker', 'avgrd_app']], on='ticker', how='left')

这两个数据框有不同数量的列。最后它只将数据帧附加到另一个:

avgrd,avgrd_app,prediction1,prediction2,ticker

-0.533520756811,,110.64654541,110.37853241,KIO
-0.533520756811,,110.64654541,110.37853241,MMM
-0.604610694122,,110.64654541,110.37853241,SRI  
[...]
,-0.212600450514,,,G5DN
,0.96378750992,,,G5N
,2.92757501984,,,DAL3
,2.27297945023,,,WHF4

那么 - 我怎样才能正确合并?

【问题讨论】:

    标签: python pandas dataframe


    【解决方案1】:

    从示例结果来看,它按预期工作,新数据没有所有代码的数字,因此缺少一些预测。那么你到底想要达到什么目的呢?如果您只需要包含所有预测的股票,请使用内连接。

    【讨论】:

    • 我想将第二个预测附加到第一个数据帧。我认为通过合并我可以实现将新预测添加到正确的位置
    猜你喜欢
    • 2018-08-06
    • 2015-02-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-21
    • 1970-01-01
    • 2017-01-21
    相关资源
    最近更新 更多