【发布时间】:2021-09-16 04:28:29
【问题描述】:
我正在尝试用 python 语言编写 SQL 代码:
datediff(mi, cast(tab.[Daily] as date), tab.[Daily]) / 3 as [date_diff]
每日格式为 yyyy-mm-dd HH:MM:SS
在sql中这段代码计算某个日期的午夜和该行的日期之间的3分钟间隔的差异。
我想在 python 中应用相同的概念。但我不知道是否有办法自动提取某个日期的午夜,尽管它的值。
例子:
Daily date_diff
2020-12-01 00:00:00 0
2020-12-01 00:03:00 1
2020-12-01 00:06:00 2
2020-12-01 00:09:00 3
2020-12-01 00:12:00 4
2020-12-01 00:33:00 11
2020-12-01 00:36:00 12
2020-12-01 00:39:00 13
2020-12-01 00:42:00 14
2020-12-01 00:45:00 15
所以我需要类似的东西:
tab['date_diff'] = (tab['Daily'].dt.minute - tab['ts180']. **MIDNIGHT OF THE DATE IN tab['DailY']** )/3
我试过了:
```tab['Midnight'] = pd.to_datetime(tab['Daily'], format = "%Y-%m-%d 00:00:00" )```
但它会用它们的值提取小时分钟和秒。 所以我尝试只提取日期
```tab['Midnight_date'] = pd.to_datetime(tab['Daily'], format = "%Y-%m-%d" )```
尝试将它与我使用 00:00:00 为小时值创建的时间列连接起来 但是这种提取也保留了小时分钟和秒的值。 有人可以帮我吗?
【问题讨论】:
标签: sql pandas datetime casting