Pandas - 添加列,匹配索引

key*_*oss 6 python pandas

我试图弄清楚 Panda 是否在将两个系列相加时自动匹配索引,或者它是否只是按元素位置添加。如果只是按位置,有没有办法让它添加到索引上?我看过合并,但我不太清楚这种情况下的键是否可以是两者的索引......

例如,如果我有做 DF:

df1 = index  value
        0      10
        1      12
        2      15
        4      20


df2 = index  value
        0      10
        1      10
        3      10
        4      10
Run Code Online (Sandbox Code Playgroud)

我想补充 df1[total] = df1[value] + df2[value] =

df1 = index  value
        0      20
        1      22
        2      15
        3      10
        4      30
Run Code Online (Sandbox Code Playgroud)

提前感谢您的帮助!

Sco*_*ton 6

由于pandas 中固有的数据对齐方式add,您可以使用with fill_value=0,它将根据索引对齐方式对这两个系列求和。

df1.add(df2,fill_value=0)
Run Code Online (Sandbox Code Playgroud)

输入:

df1 = pd.Series([10]*4,index=[0,1,3,4])

df2 = pd.Series([10,12,15,20], index=[0,1,2,4])

df1.add(df2,fill_value=0)
Run Code Online (Sandbox Code Playgroud)

输出:

0    20.0
1    22.0
2    15.0
3    10.0
4    30.0
dtype: float64
Run Code Online (Sandbox Code Playgroud)