亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

pandas dayofyear 的日期時間相當于什么?

pandas dayofyear 的日期時間相當于什么?

FFIVE 2023-06-27 18:06:37
我正在尋找從 列表中獲取一年中某一天的值的數組datetimes。例如,我可以使用方法獲取周數isocalendar。但是一年中的整數天的方法是什么?使用 pandas 這是dayofyear,但是如何使用該包獲得它datetime?from datetime import timedelta, datetimeimport numpy as npimport pandas as pdfrom dateutil.relativedelta import *datetimes = np.arange(    datetime(2012,1,1), datetime(2017,1,1), timedelta(days=1)    ).astype(datetime)week_value_by_day = np.array([datetime.isocalendar()[1] for datetime in datetimes])在一天結束時,我想要一個使用此代碼的數組np.array([datetime.<something> for datetime in datetimes]),其中<something>給我一年中的整數天并產生 array([1, 2, 3, 4, 5, 6..365]).
查看完整描述

2 回答

?
動漫人物

TA貢獻1815條經驗 獲得超10個贊

嘗試使用 strftime:

np.array([int(i.strftime("%j")) for i in datetimes])

然而,

np.array([datetime.timetuple().tm_yday for datetime in datetimes])

有效并且速度更快。


查看完整回答
反對 回復 2023-06-27
?
慕妹3146593

TA貢獻1820條經驗 獲得超9個贊

以下是日期之間天數的簡短示例,僅使用 Python 內置日期時間模塊:


import datetime


dates = [

? ? datetime.date(2019, 12, 30), datetime.date(2019, 12, 31),

? ? datetime.date(2020, 1, 1),? ?datetime.date(2020, 1, 2)

]


for d in dates:

? ? base_date = d.replace(month=1, day=1)

? ? days_between = (d - base_date) / datetime.timedelta(days=1)

? ? print(base_date, d, days_between)


2019-01-01 2019-12-30 363.0

2019-01-01 2019-12-31 364.0

2020-01-01 2020-01-01 0.0

2020-01-01 2020-01-02 1.0

days_between如果您想要基于 1 的索引,則需要添加 1 (在此示例中,1 月 1 日是“第 0 天”)。

查看完整回答
反對 回復 2023-06-27
  • 2 回答
  • 0 關注
  • 157 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號