Pythonic方法更改串联和单独数据帧中索引元素的串联值

Pythonic方法更改串联和单独数据帧中索引元素的串联值,python,pandas,Python,Pandas,我有一个系列: s A 1 B 0 C 1 D -1 E -1 F 0 ... 以及具有序列索引值子集的数据帧: df one two three .... A C D F ... df的内容与我的问题无关 我正在寻找最具python风格的方法来对照数据帧索引检查序列索引,如果索引元素同时位于序列索引和数据帧索引中,请将序列值更改为零 我想要的结果是,基于上面提供的示例s和df,该系列看起来像这样: s A

我有一个系列:

    s

A   1
B   0
C   1
D  -1
E  -1
F   0
... 
以及具有序列索引值子集的数据帧:

df

    one   two  three ....
A    
C   
D  
F   
... 
df的内容与我的问题无关

我正在寻找最具python风格的方法来对照数据帧索引检查序列索引,如果索引元素同时位于序列索引和数据帧索引中,请将序列值更改为零

我想要的结果是,基于上面提供的示例s和df,该系列看起来像这样:

    s

A   0
B   0
C   0
D   0
E  -1
F   0
请注意,一些系列值以0开头,并保持为0。索引元素同时位于这两个序列中的索引元素在序列中更改为0

我可以遍历索引,但我想用更具python风格的方法来实现这一点

提前谢谢。

只要做:

s[s.index.isin(df.index)] = 0
收益率:

A    0
B    0
C    0
D    0
E   -1
F    0
dtype: int64
只要做:

s[s.index.isin(df.index)] = 0
收益率:

A    0
B    0
C    0
D    0
E   -1
F    0
dtype: int64

可以使用update,其伪列为all
0
。应该很快

import pandas as pd

s.update(pd.Series(0, index=df.index))

可以使用update,其伪列为all
0
。应该很快

import pandas as pd

s.update(pd.Series(0, index=df.index))