python - 将天数转换为日期时间

标签 python python-3.x pandas

我见过很多相反的例子(日期时间 --> 天数),但似乎不知道如何将天数转换为日期时间。

我有一个看起来像这样的 df:

day person var
1   1      a
2   1      b
3   1      a
1   2      b
2   2      b
3   2      b
1   3      a
2   3      a
3   3      b
............
180 1      b

假设 day=1 等于 datetime=01/01/2019,如何将 day 变量转换为日期时间?

最佳答案

这是一个纯粹的 pandas 解决方案:

start_date = pd.to_datetime('2019-01-01')
df['date'] = pd.to_timedelta(df['day']-1, unit='D') + start_date

输出:

   day  person var       date
0    1       1   a 2019-01-01
1    2       1   b 2019-01-02
2    3       1   a 2019-01-03
3    1       2   b 2019-01-01
4    2       2   b 2019-01-02
5    3       2   b 2019-01-03
6    1       3   a 2019-01-01
7    2       3   a 2019-01-02
8    3       3   b 2019-01-03

关于python - 将天数转换为日期时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61389654/

相关文章:

python - 命名从 CountVectorizer Vector 创建的 DataFrame 列

c++ - PyQt 与 PySide 比较

python - 如何使用多个 contains 变量简化 .str.contains 代码?

python - 如何从pytorch网络中删除maxpooling层

python - SQLAlchemy 文本函数是否暴露于 SQL 注入(inject)?

python - 如何运行超过 10 万个任务的 Airflow dag?

Python SMTP.starttls 参数

python - Django + Factory Boy : How to use a named parameter to control behavior of factory. 也许+ factory.RelatedFactory

python - 如何删除仅包含某些值的行?

python - 根据列名的条件对 pandas dataframe 列值求和