使用combine_first

时间:2016-08-14 20:32:43

标签: python pandas

我有2个数据帧Df1和Df2看起来像

      Df1              Df2
        value            value
    id               id
    0     7.0         0   8.0
    1     3.0         1   8.0
    2     9.0         2   7.0
    3     2.0         3   5.0
    4     4.0         4   6.0
    5    -6.0         5   4.0
    6     7.0         6   8.0
    7     8.0         7   6.0
                      8   7.0
                      9   9.0
                     10   4.0

我正在尝试使用combine_first来创建新的数据帧Df3,它合并Df1和Df2,优先考虑Df1的结果。因此,使用此示例,Df3将如下所示:

Df3
            value         
        id               
        0     7.0        
        1     3.0       
        2     9.0      
        3     2.0      
        4     4.0      
        5    -6.0    
        6     7.0  
        7     8.0        
        8     7.0
        9     9.0
       10     4.0

我使用以下行尝试创建Df3:

Df3 = Df1.set_index('id').combine_first(Df2.set_index('id')).reset_index()

但我得到了例外:

KeyError: 'id'

我不明白,因为Df1和Df2都有'id'索引。

0 个答案:

没有答案