【问题标题】:convert series of dates to int number of dates将一系列日期转换为 int 日期数
【发布时间】:2022-11-22 20:49:23
【问题描述】:

我有一个格式如下的熊猫系列
dates = [Nov 2022, Dec 2022, Jan 2023, Feb 2023 ..] 我想创建一个采用这些值并具有天数的数据框。如果是闰年,我当然必须考虑这种情况

我创建了一个小函数,将日期拆分为 2 个数据框和 2 个月份列表,具体取决于它们是否有 30 天或 31 天,如下所示
month = [Nov, Dec, Jan, Feb ..]和 '年 = [2022、2022、2023、2023 ..]'
然后在某种意义上使用 isin 函数,如果月份在 listA 中,然后插入 31 天等。我还检查闰年。但是,我想知道是否有一种方法可以使用 pd.datetime 自动执行整个过程

【问题讨论】:

标签: python pandas datetime


【解决方案1】:

如果我没理解错的话,你想要一年中的哪一天?

假设:

dates = pd.Series(['Nov 2022', 'Dec 2022', 'Jan 2023', 'Feb 2023'])

您可以使用:

pd.to_datetime(dates, format='%b %Y').dt.dayofyear

注意。参考是开始每个月。

输出:

0    305
1    335
2      1
3     32
dtype: int64

【讨论】:

  • 看起来他们想要这个月的天数,但不清楚
  • 嘿,谢谢你的反馈。不完全是,我想要每个月的日子。所以在这种情况下它应该是 [30, 31, 31. 28, ... etc ]
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-10-03
  • 2017-09-10
  • 2018-10-19
  • 2022-10-05
  • 1970-01-01
  • 1970-01-01
  • 2013-07-25
相关资源
最近更新 更多