gpt4 book ai didi

python - 更改满足 DataFrame 条件的行上的列值

转载 作者:行者123 更新时间:2023-12-01 09:11:42 26 4
gpt4 key购买 nike

各位,

我有一个像这样的 df :

A       B       C        D       E      Yes
14 12 123 153 178 0
13 1 435 55 87 0
14 12 123 1 435 0
......

15 0 125 66 90 0

假设我们有两个变量 x 和 y,都是整数。如果满足以下任一条件,我想将"is"列更改为“1”:

    df.D < x and df.E > x
df.D > x and df.E > y
df.D > y and df.E > y

Besides, I am sure df.E is always larger than df.D in those raw data.

怎样才能快速完成呢?我尝试在此基础上编写一些表达式,但都有一些问题......非常感谢。

最佳答案

您可以创建一些 bool 系列并将它们用作 pd.DataFrame.loc. 的 mask 。例如:

x = 10
y = 20

m1 = (df['D'] < x) & (df['E'] > x)
m2 = (df['D'] > x) & (df['E'] > y)
m3 = (df['D'] > y) & (df['E'] > y)

df.loc[m1 | m2 | m3, 'Yes'] = 1

关于python - 更改满足 DataFrame 条件的行上的列值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51611533/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com