如何在使用pd.to_date函数并用于分割数据帧时仅获取日期

2024-04-24 08:23:25 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要一些关于如何组织我的数据集的帮助

以下是我想做的:

  • 阅读excel表格,该表格包含员工、计划日期、门店位置和经理姓名
  • 将计划日期筛选为仅上个月
  • 对数据框进行排序,使其与存储位置、员工、计划日期和经理进行排序
  • 将数据框重新排序为门店名称、员工、计划日期和经理。 请注意,计划日期我只想要日期格式

这就是我所做的:

df = pd.read_excel(file, sheet_name='Schedule', usecos=read_order, index_col=None)

# Only want to get date portion and omit the time.
df['Schedule'] = pd.to_datetime(df['Schedule']).dt.date

lday = (pd.Period(dt.datetime.now(), 'M') - 1).strftime("%Y/%m/%d")
fday = (pd.Period(dt.datetime.now(), 'M') - 1).strftime("%Y/%m/01")

df = df.set_index(['Schedule'])
df = df.loc[fday:lday]

df = df.sort_values(by=['Store', 'Employee', 'Schedule', 'Manager'])
df = df(['Store', 'Employee', 'Schedule','Manager'])

我在df.loc[fday:lday]上过滤时出错,指出fdate:2020/10/01无效

请注意,当我将计划转换为pd.to_日期时,我只想获取计划的日期部分

因此,我需要帮助,以实现我想做的更好的编码


Tags: to数据dfdatetime排序dt员工excel