【发布时间】:2019-10-30 07:52:23
【问题描述】:
我有一个包含 2 列的数据集(df1)。
F_Date B_Date
01/09/2019 02/08/2019
01/09/2019 03/08/2019
02/09/2019 03/08/2019
01/09/2019 04/08/2019
02/09/2019 04/08/2019
03/09/2019 04/08/2019
02/09/2019 05/08/2019
03/09/2019 05/08/2019
04/09/2019 05/08/2019
01/09/2019 06/08/2019
02/09/2019 06/08/2019
03/09/2019 06/08/2019
04/09/2019 06/08/2019
05/09/2019 06/08/2019
02/09/2019 07/08/2019
03/09/2019 07/08/2019
04/09/2019 07/08/2019
05/09/2019 07/08/2019
06/09/2019 07/08/2019
02/09/2019 08/08/2019
03/09/2019 08/08/2019
我想生成一个新列 value_1 这样:
对于每个 date_1,value_1(聚合)不应超过 5000。
date_2 和 value_1 应该有增加的趋势,即在 date_2 上聚合,value_1 应该每天都在增加,例如,如果 date_2,聚合 value_1 是 1000,那么对于下一个 date_2,值应该大于 1000。
数据框具有唯一的 (date_1,date_2) 元组。
经过思考,我正在考虑这样的方法:
步骤 - 1:F_Date 的值从 01/09/2019 到 30/09/2019。我想生成一个 value_1 使其具有增加的趋势,并且 value_1 应该在 50-25000 的范围内。
第 2 步:一旦我们有了一个具有 F_1 和 value_1 的新数据帧(来自第 1 步的 df2),我们读取我们拥有的数据帧 (df1) 并分配 value_1,使得对于 B_Date,有一个增加趋势也是如此。
例如:
假设 df2 中的 F_Date 我们有一个 2019 年 1 月 1 日的条目为 50。在 df1 中我们有 3 个 B_Date 对应于 F_Date,那么数据框将如下所示:
预期输出:
F_Date B_Date value_1
01/09/2019 02/08/2019 5
01/09/2019 02/08/2019 15
01/09/2019 02/08/2019 30
我无法理解如何实现这两个步骤的趋势(增加)。任何人都可以帮助解决这个问题以及第 2 步。
谢谢
【问题讨论】: