【发布时间】:2020-10-21 17:51:58
【问题描述】:
目前,我有一个庞大的数据集,下面显示了一个非常小的样本。我想要做的是根据 shift 列提取行,并从 score 列中找到 每个班次的最后 3 行 的最大值和然后将整行提取到一个新的数据框。
例如:每天有两个班次(白天和晚上),对于每个班次,我想找到每个班次的最后 3 行的最高分数(例如:6 月 26 日,白天shift> 我想从 6 月 26 日白班的 最后 3 个分数 中找到最高分。我不想获取每个班次的最高分并提取该行)并提取整行并将其设置为新的数据框。我想在两个班次的每一天都这样做。
预期的数据帧输出如下:
我尝试使用 groupby 解决此问题。但我不知道如何从 score 列中找到最大值仅考虑每个班次的最后 3 个分值。我这样做是考虑到整个班次的最高分。
【问题讨论】:
-
请以文字而非图片的形式提供示例数据。
标签: python pandas group-by pandas-groupby