- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我需要将 pandas.tslib.Timestamp 分区为几周。因此,鉴于 a
是我使用的 pd.DataFrame
tmp = pd.to_datetime(a)
tmp = tmp.apply(lambda x: str(str(x.isocalendar()[1]))
问题是我的一周不是从星期一或星期日开始,而是从星期二开始(甚至可以从星期三开始 - 这是用户定义的)。是否可以更改起始周定义并仍然使用通用 python 函数?
或者还有其他解决方法吗?
最佳答案
使用偏移量;您可以将工作日值重新转换为范围内的任何其他值,然后从周数中减去:
user_sow = 3 # wednesday (monday is 1, sunday is 7)
tmp.apply(lambda x: x.isocalendar()[1] - (x.isoweekday() < user_sow))
如果工作日在用户配置的周开始之前,则从周数中减去 1( bool True
在整数上下文中等于 1)。
演示:
>>> dt = date.today() # today's a Wednesday
>>> dt
datetime.date(2015, 4, 28)
>>> dt.isocalendar()[1]
18
>>> dt.isocalendar()[1] - (dt.isoweekday() < 2) # week starts on Tuesday
18
>>> dt.isocalendar()[1] - (dt.isoweekday() < 3) # week starts on Wednesday
17
关于Python:在 isocalendar 或 strftime 或其他中定义周定义中的起始日,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29917931/
以下答案https://stackoverflow.com/questions/2600775/how-to-get-week-number-in-python,我正在使用datetime.isoca
是否可以将 isocalender() 应用于日期列表?这应该相当简单,我只是在语法上苦苦挣扎。 我可以很好地处理单个日期,但是当我尝试循环列表时,它会出现错误 这是第一步,适用于单个日期。 # Ta
python datetime.isocalendar()方法为给定的 datetime 对象返回一个元组 (ISO_year, ISO_week_number, ISO_weekday)。有对应的反
我需要将 pandas.tslib.Timestamp 分区为几周。因此,鉴于 a 是我使用的 pd.DataFrame tmp = pd.to_datetime(a) tmp = tmp.apply
我想知道为什么 >>> pandas.Timestamp(dt.datetime(2009,1,6)).week 和 >>> datetime.datetime(2009,1,6).isocalend
这个问题在这里已经有了答案: What's the best way to find the inverse of datetime.isocalendar()? (8 个答案) 关闭 6 年前。
我有下表: Time 2016-09-10T23:20:00.000000000 2016-08-10T23:20:00.000000000 2016-09-1
我有下表: Time 2016-09-10T23:20:00.000000000 2016-08-10T23:20:00.000000000 2016-09-1
在 python 2.6 中尝试以下操作: newyear_2012 = datetime.date.fromtimestamp(1325419200) newyear.year # returns
我是一名优秀的程序员,十分优秀!