首页 > 解决方案 > Python - 遍历数据框行以从日期时间戳中删除时间

问题描述

我有一个数据框,其中有一列包含日期时间戳(dtype:datetime64 [ns]):

         Date          Docs
0 2016-06-01 04:48:23  45
1 2016-06-01 07:24:38  56
2 2016-07-01 08:27:26  87
3 2016-07-01 08:27:49  44

我想遍历每一行以删除日期的时间部分,以获得如下的最终结果:

     Date     Docs
0 2016-06-01  45
1 2016-06-01  56
2 2016-07-01  87
3 2016-07-01  44

我该怎么做呢?

标签: pythonpandasdataframedatetime

解决方案


您需要使用dt.date

df['Date'] = df['Date'].dt.date

示例案例:

import pandas as pd
import numpy as np
rng = pd.date_range('2019-01-01 01:01:00', periods=365, freq='D')
df = pd.DataFrame(rng)
print(df[0])

好像:

0     2019-01-01 01:01:00
1     2019-01-02 01:01:00
2     2019-01-03 01:01:00

申请后dt.date

df[0] = df[0].dt.date
print(df[0])

好像:

0      2019-01-01
1      2019-01-02
2      2019-01-03

推荐阅读