广播索引重叠的数据帧时出错

问题描述

我试图通过采用发电(gen)DataFrame和价格(futures)DataFrame的乘积来计算区域内每个河流系统发电的每月模拟收入。售电的价格取决于每个River的枢纽和销售月份-这就是为什么我试图在下面的代码[Hub,Month]进行广播。

下面是gen摘要

    Region      River               Hub                Month                ...               
New England Androscoggin        Nepool MH DA       1      50305.738281  ...   50527.941406
            Deerfield           Nepool MH DA       1       2043.922974  ...    2297.776611
            Kennebec            Nepool MH DA       1      78436.101562  ...   66156.820312
            Penobscot           Nepool MH DA       1      53613.738281  ...   46718.421875
            Presumpscot         Nepool MH DA       1        646.619629  ...     682.860779
...                                                                ...  ...            ...
Mid-America Kanawha             PJM WH DA Off-Peak 12     34097.550781  ...   21648.300781
            Mississippi         PJM WH DA Off-Peak 12     49278.140625  ...   71329.171875
            Susquehanna         PJM WH DA Off-Peak 12     36522.550781  ...  153354.671875
            Upper Mississippi   PJM WH DA Off-Peak 12      9848.041016  ...    9884.068359
            Wallenpaupack Creek PJM WH DA Off-Peak 12         0.000000  ...    1310.065430

这是futures摘要

Hub                   Month                        ...                      
Nepool MH DA          1      64.717211  64.854605  ...  65.159675  65.367022
                      2      61.904293  62.143657  ...  62.566991  62.563076
                      3      45.513588  45.492162  ...  45.599049  45.961659
                      4      32.884932  32.693203  ...  32.787984  33.035802
                      5      28.906349  28.656413  ...  28.816788  29.110809
                      6      29.721013  29.650988  ...  29.425435  29.896242
                      7      36.605705  36.356065  ...  36.337506  36.719773
                      8      34.960259  34.637148  ...  34.650311  34.970577
                      9      29.948827  29.450436  ...  29.900277  29.899362
                      10     29.247134  29.158457  ...  29.358135  29.413909
                      11     39.425486  39.323475  ...  39.462224  39.549663
                      12     55.967081  55.996455  ...  56.013643  56.127622
Nepool MH DA Off-Peak 1      56.514547  56.407154  ...  56.321693  56.417689
                      2      51.950248  52.246042  ...  52.262277  52.327896
                      3      37.469572  37.072221  ...  37.359739  37.622424
                      4      26.549083  26.439645  ...  26.553371  26.757820
                      5      23.030434  23.063147  ...  23.068969  23.162209
                      6      22.745016  22.680735  ...  22.767446  22.818645
                      7      26.550996  26.398359  ...  26.621345  26.636910
                      8      25.256438  25.143899  ...  25.278319  25.335403
                      9      22.540476  22.450051  ...  22.544338  22.517648
                      10     23.195924  23.057623  ...  23.195485  23.404703
                      11     32.541008  32.464413  ...  32.590006  32.547249
                      12     45.776718  45.962912  ...  46.021459  45.892296
PJM WH DA             1      43.951397  44.220676  ...  43.830352  44.381933
                      2      41.122077  41.185659  ...  40.617115  41.026146
                      3      34.215679  34.577651  ...  34.377483  34.621677
                      4      30.762057  30.832470  ...  30.836320  30.847625
                      5      30.854928  30.777034  ...  30.777888  30.894190
                      6      29.658685  29.689607  ...  29.708726  29.713017
                      7      34.903514  34.937120  ...  35.002471  34.871537
                      8      32.180070  32.134994  ...  32.082255  32.140432
                      9      31.172154  31.157204  ...  31.130319  31.291828
                      10     29.846900  30.069569  ...  30.021830  30.092272
                      11     30.953182  30.942870  ...  30.913149  31.053004
                      12     33.089883  33.183341  ...  33.130749  33.270012
PJM WH DA Off-Peak    1      34.682976  34.563583  ...  34.422801  34.799609
                      2      32.193573  32.104526  ...  32.263134  32.431760
                      3      27.218669  27.073391  ...  27.301811  27.335257
                      4      23.071031  22.939797  ...  23.095296  23.126599
                      5      22.076231  21.956663  ...  22.080024  22.079064
                      6      20.794862  20.696619  ...  20.834776  20.730026
                      7      22.602884  22.515470  ...  22.538780  22.581594
                      8      21.253178  21.227206  ...  21.156794  21.235621
                      9      21.338240  21.358370  ...  21.367224  21.302953
                      10     22.381787  22.199923  ...  22.286052  22.344770
                      11     22.623029  22.653064  ...  22.690571  22.596411
                      12     25.886652  26.132432  ...  26.138937  26.140636

在浏览了本网站上有关此主题的多个主题之后,这是我一直在尝试的代码

revenue = gen.mul(other=futures.reindex(gen.index,axis=0,level=['Hub','Month']),axis=0)

哪个一直给我以下错误

TypeError: Join on level between two MultiIndex objects is ambiguous

为什么? gen为什么不简单地将[Hub,Month]中的[Hub,Month]futures匹配?我在做什么错了?

感谢您的时间和善意的建议:)

编辑:我修改了我的代码

revenue = gen.mul(other=futures.reindex(gen.index,method='ffill'),axis=0)

错误消失了,我现在得到NaN的中美洲资产:

    Region      River               Hub                Month                ...              
New England Androscoggin        Nepool MH DA       1      2.359457e+06  ...  2.645743e+06
            Deerfield           Nepool MH DA       1      1.088841e+05  ...  1.141758e+05
            Kennebec            Nepool MH DA       1      2.517849e+06  ...  1.468011e+06
            Penobscot           Nepool MH DA       1      2.169091e+06  ...  1.323610e+06
            Presumpscot         Nepool MH DA       1      2.554929e+04  ...  3.092412e+04
...                                                                ...  ...           ...
Mid-America Kanawha             PJM WH DA Off-Peak 12              NaN  ...           NaN
            Mississippi         PJM WH DA Off-Peak 12              NaN  ...           NaN
            Susquehanna         PJM WH DA Off-Peak 12              NaN  ...           NaN
            Upper Mississippi   PJM WH DA Off-Peak 12              NaN  ...           NaN
            Wallenpaupack Creek PJM WH DA Off-Peak 12              NaN  ...           NaN

所以我的问题仍然存在:我在做什么错了?

谢谢!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)