【问题标题】:pandas add column of different days to datetime column熊猫将不同日期的列添加到日期时间列
【发布时间】:2020-12-01 11:32:23
【问题描述】:

我有一个看起来像这样的 DataFrame。

                          time  daysToExp
0   2020-08-11 13:53:57.083388          0
1   2020-08-11 13:53:57.083388          1
2   2020-08-11 13:53:57.083388          3
3   2020-08-11 13:53:57.083388          4
4   2020-08-11 13:53:57.083388          8

我想将 daysToExp 列添加到时间列中,并以这样的结果结束。

                          time  daysToExp                         Date
0   2020-08-11 13:53:57.083388          0   2020-08-11 13:53:57.083388
1   2020-08-11 13:53:57.083388          1   2020-08-12 13:53:57.083388
2   2020-08-11 13:53:57.083388          3   2020-08-14 13:53:57.083388
3   2020-08-11 13:53:57.083388          4   2020-08-15 13:53:57.083388
4   2020-08-11 13:53:57.083388          8   2020-08-19 13:53:57.083388

我找到的最接近的命令是 df['Date'] = df['time'] + pd.DateOffset(days=3),但它不能在 DataFrame 中执行整个列。我该怎么办?

【问题讨论】:

标签: python pandas


【解决方案1】:

你可以使用pd.to_timedelta:

df['time'] + pd.to_timedelta(df['daysToExp'], unit='D')

或等效:

df['time'] + pd.to_timedelta('1D') * df['daysToExp']

【讨论】:

    猜你喜欢
    • 2017-05-22
    • 1970-01-01
    • 1970-01-01
    • 2015-07-31
    • 1970-01-01
    • 1970-01-01
    • 2014-01-01
    • 2022-01-07
    • 2021-12-29
    相关资源
    最近更新 更多