【问题标题】:How to get rid of milliseconds for datetime in Python如何摆脱 Python 中日期时间的毫秒数
【发布时间】:2021-06-12 15:22:33
【问题描述】:

我有这样的日期时间

0       2021-02-01 00:01:02.327
1       2021-02-01 00:01:21.445
2       2021-02-01 00:01:31.912
3       2021-02-01 00:01:32.600
4       2021-02-01 00:02:08.920

但是,我希望它们采用 %Y.%m.%d %H:%M:%S 的格式。我已经尝试过这些方法,但它们没有任何区别。

df['Date'] = pd.to_datetime(df['Date']).dt.time

df['Date'] = pd.to_datetime(df['Date'],format='%Y.%m.%d %H:%M:%S')

另一个快速的问题是,如果我想添加一个名为“时间”的新列,我可以让他们只在日期列的 %H:%M:%S 中包含信息吗?

0       00:01:02.327
1       00:01:21.445
2       00:01:31.912
3       00:01:32.600
4       00:02:08.920

【问题讨论】:

  • 谢谢我也尝试了这个尝试,由于某种原因重新采样不起作用。这就是我所做的 df = df.set_index('Date').resample('S').last().reset_index()。但是,我得到了这样的异常发生的结果:TypeError 仅对 DatetimeIndex、TimedeltaIndex 或 PeriodIndex 有效,但得到了一个“Index”实例

标签: pandas datetime time


【解决方案1】:

按秒使用Series.dt.floor

df['Date'] = pd.to_datetime(df['Date']).dt.floor('S')

【讨论】:

  • round 是另一种选择,以防万一应该考虑毫秒而不是截断
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-04-08
  • 1970-01-01
  • 2013-03-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多