Python(使用replace替换不同列中的多个值)

Python(使用replace替换不同列中的多个值),python,Python,我有一个具有不同列的数据框。一列x的值为“a”,另一列y的值为“b”,我可以使用replace同时替换这两个值吗 我可以做两件事,比如 df["x"]=df["x"].replace("a","not a") df["y"]=df["y"].replace("b","not b") 它工作得很好,但我能用一句话来表达吗- df["x","y"]=df["x","y"].replace(["a","b"],["not a","not b"]) ? 要按多列进行索引,请在“索引”操作符内创建一个

我有一个具有不同列的数据框。一列x的值为“a”,另一列y的值为“b”,我可以使用replace同时替换这两个值吗

我可以做两件事,比如

df["x"]=df["x"].replace("a","not a")
df["y"]=df["y"].replace("b","not b")
它工作得很好,但我能用一句话来表达吗-

df["x","y"]=df["x","y"].replace(["a","b"],["not a","not b"]) ?

要按多列进行索引,请在“索引”操作符内创建一个列表。请注意,DataFrame上的replace方法将替换所有列中的每个匹配项(因此,如果两列中都有“a”值,但只希望替换其中一列,则其行为可能会有所不同)


通过将另一个替换链接到末尾,可以将一个字符串替换为另一个字符串。。不确定你会如何描述你的建议..它们是否改变为相同的值?为什么它需要在一条线上?我想这会有失去可读性的风险。非常感谢:)我用列表而不是字典,即使这样也行。如果我们在replace中传递字典或列表作为输入,有什么区别?
df[['x', 'y']] = df[['x', 'y']].replace({'a':'not a','b':'not b'})