📅  最后修改于: 2023-12-03 15:23:14.797000             🧑  作者: Mango
在进行时间序列分析时,经常需要将具有时间戳的列的时间戳截断为午夜。在 Python 的 pandas 包中,可以使用 dt.floor
方法来实现。以下是一个示例:
import pandas as pd
# 创建一个DataFrame,包含一列日期时间戳
df = pd.DataFrame({
'timestamp': [
'2021-01-01 10:30:00',
'2021-01-02 15:45:00',
'2021-01-03 05:15:00'
]
})
# 将时间戳截断为午夜
df['timestamp'] = pd.to_datetime(df['timestamp']).dt.floor('d')
# 输出DataFrame
print(df)
以上代码将输出如下内容:
timestamp
0 2021-01-01
1 2021-01-02
2 2021-01-03
在这个示例中,我们创建了一个包含一个日期时间戳的 DataFrame,并使用 pd.to_datetime
将它转换为 pandas 的日期时间戳对象。然后,我们使用 dt.floor
方法,将日期时间戳截断为午夜。 'd'
是一个时间戳偏移字符串,表示日期时间戳应该被截断到日期级别。
注意,将时间戳截断为午夜是通过在 Python 中生成新的时间戳对象完成的。如果您需要在原始 DataFrame 上更改时间戳列,请使用 df['timestamp'].dt.floor('d', inplace=True)
。