gpt4 book ai didi

python - 组中最后一项的虚拟变量

转载 作者:行者123 更新时间:2023-12-02 18:46:49 25 4
gpt4 key购买 nike

给定如下所示的数据框,如何添加一列来指示该记录是该 id 的最后一项。

pd.DataFrame({'ID' :["A"] *5 +[ "B"] *2 + ["C"] * 4,
'Year': [2017] * 4 +[2018] + [2017, 2019] + [2019] *2 +[2020] * 2,
'Quarter': [1,2,3,4,1,3,2,3,4,1,2]})


ID Year Quarter
0 A 2017 1
1 A 2017 2
2 A 2017 3
3 A 2017 4
4 A 2018 1
5 B 2017 3
6 B 2019 2
7 C 2019 3
8 C 2019 4
9 C 2020 1
10 C 2020 2

期望:

    ID  Year    Quarter Last
0 A 2017 1 0
1 A 2017 2 0
2 A 2017 3 0
3 A 2017 4 0
4 A 2018 1 1
5 B 2017 3 0
6 B 2019 2 1
7 C 2019 3 0
8 C 2019 4 0
9 C 2020 1 0
10 C 2020 2 1

最佳答案

您可以使用 keep='last 执行 series.duplicated 并从 1 中减去它

df['Last'] = 1-df['ID'].duplicated(keep='last')
#df['Last'] = 1-df['ID'].duplicated(keep='last').astype(int)

   ID  Year  Quarter  Last
0 A 2017 1 0
1 A 2017 2 0
2 A 2017 3 0
3 A 2017 4 0
4 A 2018 1 1
5 B 2017 3 0
6 B 2019 2 1
7 C 2019 3 0
8 C 2019 4 0
9 C 2020 1 0
10 C 2020 2 1

关于python - 组中最后一项的虚拟变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67321638/

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