我有一个像这样构建的数据库:
>>> df = pd.DataFrame({'id':[1,1,1,2,2,2,2,3,4],'value':[1,2,3,1,2,3,4,1,1]})
>>> df
id value
0 1 1
1 1 2
2 1 3
3 2 1
4 2 2
5 2 3
6 2 4
7 3 1
8 4 1
Run Code Online (Sandbox Code Playgroud)
并且我想为每个 ID 的第 n 个最大值生成一个虚拟变量(此处为 n = 2),以便对于所有第 n 个最大值之一的值等于 1:
id value Largest
0 1 1 0
1 1 2 1
2 1 3 1
3 2 1 0
4 2 2 0
5 2 3 1
6 2 4 1
7 3 …Run Code Online (Sandbox Code Playgroud)