【发布时间】:2021-09-16 22:18:56
【问题描述】:
我想获取最后一个 n 行,其中 Value 与 Value 列中的最后三个唯一值中的任何一个匹配。
这是一个示例数据帧:
df = {'Features':['A','A','A','A','C','C','C','C','B','B','B','B'],'Date':['1/3/2023','1/3/2022','1/3/2022','1/3/2021','1/3/2024','5/8/2020','5/8/2021','5/8/2022','6/1/2020','6/1/2019','5/8/2023','5/8/2023'],
'Value':[2,9,4,7,4,5,7,8,0,3,9,9]}
df=pd.DataFrame(df)
Features Date Value
0 A 1/3/2023 2
1 A 1/3/2022 9
2 A 1/3/2022 4
3 A 1/3/2021 7
4 C 1/3/2024 4
5 C 5/8/2020 5
6 C 5/8/2021 7
7 C 5/8/2022 8
8 B 6/1/2020 0
9 B 6/1/2019 3
10 B 5/8/2023 9
11 B 5/8/2023 9
例如,对于最后三个唯一值上方的示例数据,0, 3, 9 与最后 四 行匹配,因此所需的输出将是:
7 B 6/1/2020 0
8 B 6/1/2019 3
9 B 5/8/2023 9
10 B 5/8/2023 9
谁能帮我解决这个问题?
【问题讨论】:
-
您说“最后三个”,但您想要的输出示例包括四个记录。
-
我相信这是最后 3 个 值。 0、3 和 9(只有 2 行有 9)@blorgon
-
我的意思是,他们非常明确地说:“最后三个唯一的行”三个不同的时间,一次在标题中,两次在正文中。我倾向于相信 OP 犯了一个错误。
-
"我想得到 0,3 和 9 的行",即 4 行。我可能是错的。只有 OP 可以确认。
-
@blorgon 很抱歉造成混乱。我已经更新了问题。
标签: python pandas numpy unique