【发布时间】:2019-09-03 12:59:32
【问题描述】:
我正在研究机器学习回归问题,我根据输入特征预测销售价值。在哪个日期是功能之一,我想从日期中获取月份和星期数。月份给出 1 到 12 是可以的。但是几周我得到 1 到 52 之间,这也是正确的,但我试图获得 1 到 5 范围内的周数,有些月份有 4 周,有些有 5 周。
我已经尝试了获取周数的可用方法,但它只给出了 1 到 52 的范围。我不能简单地将其除以 4,否则没有一个月会有 5 周。
这段代码给出的输出范围在 1 到 52 之间,我还尝试了其他几种方法。
df['Week'] = df['Date'].dt.week
如果特定日期属于一个月的第五周,它应该返回,而不是它应该给出第 5 周。
【问题讨论】:
-
"我正在尝试获取 1 到 5 范围内的周数,有些月份有几周,有些有 5" 嗯?如果日期是一年中的第 49 周,为什么您会期望得到除 49 之外的任何内容?
-
您是否要获取相对于月份的周数?问题不清楚。
-
@DeepSpace 他想要一个月内的周数
-
@DeepSpace 任何超过 28 天的月份从第 5 周开始
-
@MurrayW 你是对的。我的意思是使用
// 7和(month_day - 1) // 7 + 1
标签: python pandas dataframe datetime