考虑以下 DF。
ID Name Week Course Hours
0 1 John A 1922 Bike Tech 5.5
1 2 John B 1922 Auto Tech 3.2
2 3 John C 1922 Prison 3.5
3 4 John D 1922 Comp 6.5
4 5 John E 1922 Awareness 7.0
5 6 John F 1922 First Aid 7.2
6 7 John G 1922 BasketBall 2.5
7 8 John H 1922 Tech 5.4
我正在使用以下代码复制行
duplicate = [3 if val == 'Prison' else 1 for val in df.Course]
这很好,但我需要为每个重复增加周数,这样约翰 C 就会有 3 行,包括 1922、1923 和 1924 周。
我试过了
[3 if val == 'Prison' and df.Week +1 else 1 for val in df.Course]
和其他一些基本链,但我无法弄清楚。
ID Name Week Course Hours
0 1 John A 1922 Bike Tech 5.5
1 2 John B 1922 Auto Tech 3.2
2 3 John C 1922 Prison 3.5
2 3 John C 1923 Prison 3.5
2 3 John C 1924 Prison 3.5
3 4 John D 1922 Comp 6.5
4 5 John E 1922 Awareness 7.0
5 6 John F 1922 First Aid 7.2
6 7 John G 1922 BasketBall 2.5
7 8 John H 1922 Tech 5.4
饮歌长啸
大话西游666
相关分类