如何用不同的索引连接数据帧和系列

时间:2017-08-05 03:34:56

标签: python pandas

如果我有一个像这样的数据框和系列

  bi            sm
0  A          0  a
1  B          1  b
2  C          2  C

我可以像这样连接

dfA['sm'] = dfB

  big  sm
0 A    a
1 B    b 
2 C    c

但是我有一个数据帧和seriese,每个都有不同的索引但行号相同。

            bi            sm
2017-11-04  A          0  a
2017-11-03  B          1  b
2017-11-02  C          2  C 

我想将这两个连接到这个

            bi  sm
2017-11-04  A   a
2017-11-03  B   b
2017-11-02  C   C 

我该怎么做?

2 个答案:

答案 0 :(得分:3)

使两个数据帧具有相同的索引,然后连接:

pd.concat([dfA, dfB.set_index(dfA.index)], axis=1)
#           bi sm
#2017-11-04  A  a
#2017-11-03  B  b
#2017-11-02  C  c

答案 1 :(得分:2)

您可以将dfB.sm指定为值

选项1

In [209]: dfA['sm'] = dfB.sm.values

In [210]: dfA
Out[210]:
           bi sm
2017-11-04  A  a
2017-11-03  B  b
2017-11-02  C  C

选项2

In [215]: dfA.assign(smm=dfB.sm.values)
Out[215]:
           bi smm
2017-11-04  A   a
2017-11-03  B   b
2017-11-02  C   C

注意:dfAdfB都是数据框。