【发布时间】:2023-01-13 15:03:12
【问题描述】:
我有一个基于日期时间的数据框,如下所示,
timestamp value ... metric
36 2014-04-02 17:20:00 125.098263 ... 25.098263
14 2014-04-06 16:25:00 140.072787 ... 265.171050
10 2014-04-11 09:00:00 127.882020 ... 393.053070
45 2014-04-11 09:05:00 115.705719 ... 508.758789
24 2014-04-11 09:15:00 127.261178 ... 636.019967
17 2014-04-11 09:20:00 121.157997 ... 757.177965
49 2014-04-11 09:25:00 120.468468 ... 877.646433
8 2014-04-11 09:45:00 135.642696 ... 1013.289128
33 2014-04-11 09:55:00 125.210049 ... 1138.499178
19 2014-04-11 10:05:00 159.259713 ... 1297.758890
52 2014-04-11 10:20:00 150.082482 ... 1447.841373
我想创建名为“diff_col”的新列,其中包含“相同”或“差异”值。 如果日期不连续,则将其视为“差异”,否则为“相同”。 在上面的数据框中,2014-04-02 17:20:00 和 2014-04-06 16:25:00 与剩余的日期时间值相比是不同的日期。
如何创建 diff_col 。
我试过了, df['diff_col']=df.groupby(pd.Grouper(key = 'timestamp', freq='1D'))
但它没有正确创建预期的列。 我需要的数据框如下,
timestamp value ... metric diff_col
36 2014-04-02 17:20:00 125.098263 ... 25.098263 diff
14 2014-04-06 16:25:00 140.072787 ... 265.171050 diff
10 2014-04-11 09:00:00 127.882020 ... 393.053070 same
45 2014-04-11 09:05:00 115.705719 ... 508.758789 same
24 2014-04-11 09:15:00 127.261178 ... 636.019967 same
17 2014-04-11 09:20:00 121.157997 ... 757.177965 same
49 2014-04-11 09:25:00 120.468468 ... 877.646433 same
8 2014-04-11 09:45:00 135.642696 ... 1013.289128 same
33 2014-04-11 09:55:00 125.210049 ... 1138.499178 same
19 2014-04-11 10:05:00 159.259713 ... 1297.758890 same
52 2014-04-11 10:20:00 150.082482 ... 1447.841373 same
请对此提出建议。
谢谢, 库马尔
【问题讨论】:
标签: python pandas python-datetime