我有一个DataFrame,我想在列a上基于列B应用公式。
如果列B有一些值,则将公式应用于列A(100 - column value
(。以下是我掌握的数据。
数据帧输入
A B
0 35 TYLER
1 20 MACK
2 30 MACK
3 40 MITCH
如果列B有"MACK"one_answers"MITCH",则应用公式,否则不应用。我该怎么做?
数据帧输出
A B
0 35 TYLER
1 80 MACK
2 70 MACK
3 60 MITCH
您可以通过布尔索引将公式限制为仅匹配的行:
apply_rows = df["B"].isin(["MACK", "MITCH"])
df.loc[apply_rows, "A"] = 100 - df.loc[apply_rows, "A"]