gpt4 book ai didi

python - 如何根据数据框中的条件更改行的值?

转载 作者:行者123 更新时间:2023-12-01 07:14:07 24 4
gpt4 key购买 nike

我有如下所示的数据框,

    type  label
0 0 0
1 0 0
2 0 0
3 0 0
4 2 1
5 2 1
6 2 1
7 2 1
8 2 1
9 2 1
10 0 0
11 0 0
12 0 0
13 0 0
14 0 0
15 0 0
16 0 0
17 0 0
18 0 0
19 0 0

(需要一些魔法才能完成)

应在类型列中进行更改,这样,如果 label0type0 那么下一行 type 应分配为 2

完整的数据框应如下所示:

    type  label
0 0 0
1 2 0
2 2 0
3 0 0
4 2 1
5 2 1
6 2 1
7 2 1
8 2 1
9 2 1
10 0 0
11 2 0
12 2 0
13 2 0
14 2 0
15 2 0
16 2 0
17 2 0
18 2 0
19 2 0

最佳答案

使用.eq()屏蔽具有 typelabel 列值为 0 和 .shift() 的行使用可选的时间频率将索引移动所需的周期数。

例如

m = df['type'].eq(0) & df['label'].eq(0)
df.loc[m == m.shift(1),'type'] = 2
print(df)

O/P:

    type  label
0 0 0
1 2 0
2 2 0
3 2 0
4 2 1
5 2 1
6 2 1
7 2 1
8 2 1
9 2 1
10 0 0
11 2 0
12 2 0
13 2 0
14 2 0
15 2 0
16 2 0
17 2 0
18 2 0
19 2 0

关于python - 如何根据数据框中的条件更改行的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58060206/

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