【发布时间】:2020-07-17 12:38:33
【问题描述】:
我正在尝试创建某个预测模型。我决定用 这次用python代替DAX(pbi)来学习python。
我有 2 列与此问题相关:客户和日期。 每行都是在该特定日期为该客户创建的发票。
我正在尝试为每一行(发票)获取上一个发票日期。了解这一点很重要 新列必须考虑客户,这意味着对于每个客户的发票,我想获得发票的上一个日期。
这就是它的样子:
data = [['A', 17/07/2020], ['B', 15/07/2020], ['C', 14/07/2020], ['C', 10/07/2020], ['B', 09/07/2020]]
df = pd.DataFrame(data, columns = ['Customer', 'Date'])
print(df)
Customer Date
A 17/07/2020
B 15/07/2020
C 14/07/2020
C 10/07/2020
B 09/07/2020
这是我寻求的结果:
Customer Date PrevInvoiceDate
A 17/07/2020 NaT
B 15/07/2020 09/07/2020
C 14/07/2020 10/07/2020
C 10/07/2020 NaT
B 09/07/2020 NaT
我尝试使用 pandas 的 shift、loc、filter 等。但没有运气, 我将很感激学习正确的方法来进行这种操作并向大家学习。 谢谢。
【问题讨论】:
标签: python pandas data-science data-manipulation