对于DataFrame,例如:
col1 col2 val
0 1 1 1
1 1 1 2
2 1 1 3
3 1 2 1
4 1 2 2
5 1 2 3
6 2 1 1
7 2 1 2
8 2 2 1
我要生产:
col1 col2 val final
0 1 1 1 False
1 1 1 2 False
2 1 1 3 True
3 1 2 1 False
4 1 2 2 False
5 1 2 3 True
6 2 1 1 False
7 2 1 2 True
8 2 2 1 True
本质上标记col1
和col2
的每个唯一值的最终val
(最大)。
(Data按col1〉col2〉瓦尔升序排序)
我已经尝试过循环和设置每一个,因为他们出现如下:
df["final"] = False
for col1 in df["col1"].unique():
for col2 in df["col2"].unique():
df[df["col1"].eq(col1) & df["col2"].eq(col2)].iloc[-1]["final"] = True
但这并不能设定价值观。
1条答案
按热度按时间a0zr77ik1#
尝试使用
groupby