Python 根据日期时间计算北美工作周数?

2024-03-09

我正在尝试根据此系统从时间戳中获取工作周数:

美国、加拿大、拉丁美洲大部分地区、日本、以色列、韩国等 其他人则使用周编号系统(在我们的系统中称为北美) 计算器),其中任何给定年份的第一周(编号为 1)是 包含 1 月 1 日的那一周。一周的第一天是星期日 星期六是最后一个。

https://www.calendar-12.com/week_number https://www.calendar-12.com/week_number

Python的strftime方法支持%U and %W,但这些都不符合该系统。熊猫还添加了%V遵循 ISO 8601,但这也不是北美所使用的。


以下是我在我的一个项目中使用的代码。它基于北美周编号系统,其中第一周是包含 1 月 1 日的那一周。

from datetime import date

def week1_start_ordinal(year):
    jan1 = date(year, 1, 1)
    jan1_ordinal = jan1.toordinal()
    jan1_weekday = jan1.weekday()
    week1_start_ordinal = jan1_ordinal - ((jan1_weekday + 1) % 7)
    return week1_start_ordinal

def week_from_date(date_object):
    date_ordinal = date_object.toordinal()
    year = date_object.year
    week = ((date_ordinal - week1_start_ordinal(year)) // 7) + 1
    if week >= 52:
        if date_ordinal >= week1_start_ordinal(year + 1):
            year += 1
            week = 1
    return year, week

例如:

>>> from datetime import date
>>> week_from_date(date(2015, 12, 27))
(2016, 1)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python 根据日期时间计算北美工作周数? 的相关文章

  • pygraphviz,导入错误:未定义的符号:Agundirected

    import pygraphviz Traceback most recent call last File
  • 提高 pytesseract 从图像中正确识别文本的能力

    我正在尝试使用读取验证码pytesseract模块 大多数时候它都能提供准确的文本 但并非总是如此 这是读取图像 操作图像以及从图像中提取文本的代码 import cv2 import numpy as np import pytesser
  • 添加反斜杠而不转义[重复]

    这个问题在这里已经有答案了 我需要逃离 字符串中的 字符 问题是每当我string string replace 结果是 添加额外的反斜杠来转义原始反斜杠 如何删除这个多余的反斜杠 结果 仅显示 实际上字符串是 gt gt gt str g
  • Ttk Treeview:跟踪键盘选择

    这是一个带有 ttk 树视图的 Tk 小部件 当用户单击该行时 会执行某些功能 此处仅打印项目文本 我需要的是以下内容 最初的重点是文本输入 当用户按下 Tab 键时 焦点应该转到第一行 并且应该执行绑定到 Click 事件的函数 当用户使
  • Python Subversion 包装器库

    在颠覆的文档 http svnbook red bean com en 1 7 svn developer usingapi html svn developer usingapi otherlangs有一个从 Python 使用 Subv
  • BeautifulSoup 抓取街道地址

    我正在使用最底部的代码来获取weblink 以及清真寺名称 不过我也想得到面值 and 街道地址 请帮助我被困住了 目前我得到以下信息 Weblink div class subtitleLink a href http www salat
  • 为什么 PySpark 中的 agg() 一次只能汇总 DataFrame 的一列? [复制]

    这个问题在这里已经有答案了 对于下面的数据框 df spark createDataFrame data Alice 4 300 Bob 7 677 schema name High 当我尝试找到最小值和最大值时 我只得到输出中的最小值 d
  • Python Pandas groupby、排名,然后根据自定义排名分配值

    问题设置 大熊猫数据框 df pd DataFrame Group A A A A A A A A A Subgroup Group 1 Group 1 Group 1 Group 1 Group 1 Group 1 Group 2 Gro
  • 为 pandas 数据框中的两列创建邻接矩阵

    我有一个以下形式的数据框 index Name A Name B 0 Adam Ben 1 Chris David 2 Adam Chris 3 Ben Chris 我想获得邻接矩阵Name A and Name B ie Adam Ben
  • UTF-8 在 Python 日志记录中,如何?

    我正在尝试使用 Python 的日志记录包将 UTF 8 编码的字符串记录到文件中 作为一个玩具示例 import logging def logging test handler logging FileHandler home ted
  • Python Pandas:将参数传递给 agg() 中的函数

    我试图通过使用不同类型的函数和参数值来减少 pandas 数据框中的数据 但是 我无法更改聚合函数中的默认参数 这是一个例子 gt gt gt df pd DataFrame x 1 np nan 2 1 y a a b b gt gt g
  • 如何在python中合并具有相同键的嵌套字典

    我有一个这样的数据结构 SNAPSHOT SnapshotVersion 304 SNAPSHOT SnapshotCreationDate 2015 06 21 17 33 41 CafeData CafeVersion 2807 Caf
  • 使用每日频率格式化 x 轴

    我正在尝试获取每日数据图 我有 3 个月的数据 每天都很难指出 如何格式化 x 轴 以便我可以获得每个日期 可以使用以下命令更改主要刻度的频率set major locator mdates DayLocator interval 5 如下
  • Python:多重分配与单独分配速度

    我一直在寻求从我的代码中挤出更多的性能 最近 在浏览时这个 Python 维基页面 https wiki python org moin PythonSpeed 我发现了这个说法 多重分配比单独分配慢 例如 x y a b 比 x a y
  • 我的 R 平方分数为负,但使用 k 倍交叉验证的准确度分数约为 92%

    对于下面的代码 我的 r 平方分数为负 但使用 k 折交叉验证的准确度分数为 92 这怎么可能 我使用随机森林回归算法来预测一些数据 数据集的链接在下面的链接中给出 https www kaggle com ludobenistant hr
  • 使用 PyQt5 拖放 QLabels

    我正在尝试使用 PyQt5 将 Qlabel 拖放到另一个 Qlabel 上 from PyQt5 QtWidgets import QApplication QWidget QToolTip QPushButton QMessageBox
  • numpy 中的分层抽样

    在 numpy 中我有一个这样的数据集 前两列是索引 我可以通过索引将数据集分成多个块 即第一个块是 0 0 第二个块是 0 1 第三个块 0 2 然后是 1 0 1 1 1 2 等等 每个块至少有两个元素 索引列中的数字可能会有所不同 我
  • 按工作日分组的熊猫 (M/T/W/T/F/S/S)

    我有一个 pandas 数据框 其中包含 YYYY MM DD arrival date 形式的时间序列 作为索引 我想按每个工作日 周一到周日 进行分组 以便计算其他日期列是平均值 中位数 标准差等 我最终应该只有七行 到目前为止我只知道
  • Rails 和 Mysql 的毫秒数

    使用 Rails Mysql 时存储时间 以毫秒为单位 的最佳方式是什么 我将使用小数和composed of 以便能够将该值作为Ruby 时间进行操作 有人有更好的主意吗 自从提出这个问题以来 已经过去了好几年了 这是更新的解决方案 ht
  • Pandas:根据是否为 ​​NaN 来移动列

    我有一个像这样的数据框 phone number 1 clean phone number 2 clean phone number 3 clean NaN NaN 8546987 8316589 8751369 NaN 4569874 N

随机推荐

  • iOS上删除大文件文件夹的性能

    假设我的 iOS 应用程序的数据目录中有一个文件夹 其中包含数千个小文件 删除此文件夹 通过 NSFileManager removeItemAtPath 需要相当长的时间 但在 OS X 上 删除具有相同内容的文件夹非常快 它似乎只是从文
  • Java 项目的包结构?

    在 Java Web 应用程序中设置包结构的最佳实践是什么 您将如何设置您的 src 单元测试代码等 你可以关注maven的标准项目布局 http maven apache org guides introduction introduct
  • shell中实时去除回车

    对于上下文 我尝试创建一个 shell 脚本来简化 ffmpeg 的实时控制台输出 仅显示正在编码的当前帧 我的最终目标是在某种进度指示器中使用此信息进行批处理 对于那些不熟悉 ffmpeg 输出的人来说 它将编码的视频信息输出到 stdo
  • pandas 对布尔类型应用过滤器

    这些是我的 DataFrame 的类型 count int64 word object cat1 bool cat2 object cat3 bool dtype object 如何对 cat1 和 cat2 中的布尔值进行过滤 就像是 d
  • 如何在 C# 中使用可选参数?

    Note This question was asked at a time when C did not yet support optional parameters i e before C 4 我们正在构建一个从 C 类以编程方式生
  • 如何检索 git 中两次提交之间更改的 maven 模块列表

    我有一个带有主模块和多个子模块的 Maven 项目 我想知道是否有一种简单的方法来检索两次提交之间更改的所有模块 无论如何 在问题提出近三年后 我基于 git diff 的启发式设计 基于 Maven 工件受惯例支配的事实 提取所有文件更改
  • 从 CursorAdapter.get() 返回对象

    我正在重写 CursorAdapter 我需要获取最后一项 问题是 CursorAdapter 实际上有一个 get 方法 但源是一个数据库 它返回一个普通对象 我什至不知道它是什么 我希望它返回一个 Cursor 对象 尽管如此 我怎样才
  • Android studio logcat最大行数

    我正在使用连接到 Android Studio 的真实设备进行测试 由于我不想中断多线程行为 因此我在代码中添加了大量日志语句以了解发生了什么 在 logcat 中 我看到了即将到来的语句 到目前为止一切顺利 运行完整测试后 我发现我的日志
  • 我应该从 MVC 框架中的控制器或模型中调用 redirect() 吗?

    我正在使用 MVC PHP 框架 Codeigniter 并且我有一个直接的问题 即从哪里调用redirect 控制器还是模型 设想 用户导航到 www example com item 555 在我的模型中 我在项目数据库中搜索 ID 为
  • 如何在使用 Moq 的测试中引发事件?

    以下是父类中的部分代码实现 handler FooUpdateDelegate FooUpdate OnFooUpdate protected abstract void OnFooUpdate ref IBoo boo string s
  • 如何在解决方案级别使用 Microsoft.Net.Compilers?

    我想开始使用Microsoft Net Compilers https www nuget org packages Microsoft Net Compilers 简化我们的构建服务器的工作 但是 我只能让它在每个项目级别 https s
  • 木偶如何判断变量是否已设置

    在木偶类中 我应该如何测试变量是否已设置 现在我只是检查变量是否未定义 if http port undef run command run command http port http port 有没有更好的方法来检查变量是否已声明 如果
  • 如何在视图中使用Django缓存而不缓存所有页面

    我尝试使用 Django Cache 来改善我的观点 效果很好 400 毫秒到 8 毫秒是完美的 但是当用户第一次访问页面时 Django 会在标题中缓存包含用户信息的页面 当我尝试注销时 页面会继续包含用户信息 我也尝试在模板中使用缓存
  • 使用 ionic 构建网站的移动网页版本是个好主意吗? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我在一家初创公司工作 我们决定拥有一个自适应网站而不是响应式网站 因此我们基本上为不同设备提供不同的视图 以便我们为两端 移动 桌面
  • 禁用 Oreo 中的状态栏拉动

    通过禁用状态栏的拉动和单击来 kiosk 应用程序的方法在 android 8 上不起作用 Android中如何禁用状态栏点击和下拉 https stackoverflow com questions 29969086 how to dis
  • Woocommerce 结账页面显示订单摘要 2 次?

    On the checkout page when user checkbox for the shipping details the order summary doubles I have done many modification
  • 输入字段的自动焦点属性在 IE 11 中不起作用

    我似乎无法在 IE 11 中使用它 我创建了一个非常简单的 jsfiddle http jsfiddle net 0qwbr7gh http jsfiddle net 0qwbr7gh 有如下输入框
  • TensorFlow 函数检查一个值是否在给定范围内?

    我知道有tf greater x y 如果 x gt y 按元素 则返回 true 如果张量 x 的 lower bound 没有特定的功能 但您可以组合使用tf greater tf less and tf logical and得到相同
  • 与 .annotate() 结合使用时,Django 查询集联合似乎不起作用

    我有以下查询集 photos Photo objects all 我过滤掉两个查询 a photos filter gallery name NGL b photos filter gallery name NGA 我将它们加在一起 它们形
  • Python 根据日期时间计算北美工作周数?

    我正在尝试根据此系统从时间戳中获取工作周数 美国 加拿大 拉丁美洲大部分地区 日本 以色列 韩国等 其他人则使用周编号系统 在我们的系统中称为北美 计算器 其中任何给定年份的第一周 编号为 1 是 包含 1 月 1 日的那一周 一周的第一天