gpt4 book ai didi

python - 如何根据使用 Pandas 的实际日期查找一年中的天数?

转载 作者:太空宇宙 更新时间:2023-11-03 12:59:36 24 4
gpt4 key购买 nike

我的数据框 data 有一个日期变量 dateOpen,格式如下 date_format = "%Y-%m-%d %H:%M: %S.%f" 并且我想要一个名为 openDay 的新列,它是基于一年 365 天的天数。我尝试应用以下内容

data['dateOpen'] = [datetime.strptime(dt, date_format) for dt in data['dateOpen']]
data['openDay'] = [dt.day for dt in data['dateOpen']]

但是,我得到了一个月中的一天。例如,如果日期是 2013-02-21 10:12:14.3 那么上面的公式将返回 21。但是,我希望它返回 52,即从 1 月算起的 31 天加上从 1 月算起的 21 天二月。

有没有在 Pandas 中执行此操作的简单方法?

最佳答案

最新的 pandas 上你可以使用 date-time properties :

>>> ts = pd.Series(pd.to_datetime(['2013-02-21 10:12:14.3']))
>>> ts
0 2013-02-21 10:12:14.300000
dtype: datetime64[ns]
>>> ts.dt.dayofyear
0 52
dtype: int64

在旧版本上,您可能能够转换为 DatetimeIndex,然后使用 .dayofyear 属性:

>>> pd.Index(ts).dayofyear  # may work
array([52], dtype=int32)

关于python - 如何根据使用 Pandas 的实际日期查找一年中的天数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27239063/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com