首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >本月的第n个业务周

本月的第n个业务周
EN

Stack Overflow用户
提问于 2016-11-18 09:34:29
回答 1查看 55关注 0票数 0

有没有可能得到这个月的第N个营业周?目前我有以下代码,但它考虑到了周末。例如,如果我们给出日期2016-10-10,这将使3成为当前月份的第几周。事实上,这实际上是一个月中的第二个营业周。

代码语言:javascript
复制
wk <- function(x) as.numeric(format(x, "%U")); 
cur.wom = wk(d) - wk(as.Date(cut(d, "month"))) + 1
EN

回答 1

Stack Overflow用户

发布于 2016-11-23 04:24:06

我不能从你的问题中看出你希望如何处理周末,所以下面的代码应该在周一到周五工作,但周末可能不会像你想的那样进行。您应该做的第一件事是将值转换为POSXlt对象,因为这些对象具有内置的诸如星期几之类的信息。

代码语言:javascript
复制
myDate <- as.POSIXlt("2016-10-10", format = "%Y-%m-%d")

您可能需要修改日期的format字符串,因为如果格式为年-月-日或年-日-月,则该字符串在示例中不明确。

然后,我们可以使用以下等式来获得您的业务周值。

代码语言:javascript
复制
(myDate$mday - myDate$wday + 4) %/% 7 + 1

mday字段包含日期的月份日期,wday字段包含指示星期几的数值(从周日的0开始)。通过从mday中减去wday,我们得到了同一周内任何一天的相同数字。%/% 7做整数除法,这将把事情分成周。+ 4调整每周的值,这样当应用%/% 7时,它将指示您想要的周,而不管该月是从哪一周开始的。最终的+ 1只是转换数据,因此从1开始计算周数,而不是从0开始。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40668012

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档