首页 > 解决方案 > 使用 Pandas,您只能从显示日期范围(2020-02-10/2020-02-16)的 to_period 函数中提取日期吗?

问题描述

这是我打电话时的日期格式to_period

代码如下:

df.groupby(df.date.dt.to_period(freq='W'))

date
2020-02-10/2020-02-16
2020-02-17/2020-02-23
2020-02-24/2020-03-01
2020-03-02/2020-03-08

但是,我只想显示第一个日期,所以它看起来像这样:

date
2020-02-10
2020-02-17
2020-02-24
2020-03-02

我尝试使用strftime只取年、月和日期。但是,这会选择第二天而不是同一行中的第一天。

我按周分组

df.groupby(df.date.dt.to_period(freq='W'))['interviews'].sum().reset_index().sort_values('date')

谢谢!

标签: pythonpandasdate

解决方案


你正在寻找.start_time. 我不确定你的数据,所以我可以使用你的 groupby 函数,但是像这样:

df.date.dt.to_period(freq='W').apply(lambda x: x.start_time)

或者

df['week'] = df.date.dt.to_period(freq='W')
df.week.dt.start_time

推荐阅读