python - 用相同的键计算过去的条目
问题描述
我有这个简化的数据集,它有一个日期和一个 ID。我想要一个包含 ID 计数的新列总计,但由于我正在创建 ML 模型预测,我只想考虑实际事件之前的条目。
我只想为每个条目计算日期较小的条目。例如:计算 ID 相同且日期 <= 当前行日期的所有条目,并添加具有该值的列。
ID | Date |
1 | 3/4/10 |
1 | 3/6/10 |
1 | 1/2/10 |
2 | 5/5/10 |
2 | 5/6/10 |
结果
ID | Date | Total
1 | 3/4/10 | 1
1 | 3/6/10 | 2
1 | 1/2/10 | 0
2 | 5/5/10 | 0
2 | 5/6/10 | 1
非常感谢!
解决方案
定义一个检查日期的函数。使用例如。
def DateOrderChecker(input):
truncatedInput = input[:n]
trunflip = truncatedInput.reverse()
trunFinal = (trunflip[:v]).reverse()
其中 n 是字符。在日期结束时,v 在之前。所以你会留下“5/5/10”
现在做
month, day, year = trunFinal.split("/")
最后制作一个 if 字符串用于比较 (year/month/day) < (HeldMonth/HeldDay/Heldyear)
重要性排序年>月>日