使用pandas.date_range(startdate, periods=n, freq=f)函数,您可以创建一系列 Pandas Timestamp对象,其中freq可选参数表示该范围内的频率(秒,分钟,小时,天...)。

documentation没有提到预期传递的文字,但是几分钟后,您可以轻松找到其中的大多数文字。

  • 's':第二个
  • 'min':分钟
  • 'H':小时
  • 'D':天
  • 'w':星期
  • 'm':月份

  • 但是,“y”,“Y”,“yr”等均不创建以年份为频率的日期。
    有人知道该传递什么吗,还是完全有可能?

    最佳答案

    年度索引到年初或年底
    频率为年末频率的freq='A',为年末频率的'AS'。检查aliases in the documentation
    例如。 pd.date_range(start=pd.datetime(2000, 1, 1), periods=4, freq='A')退货DatetimeIndex(['2000-12-31', '2001-12-31', '2002-12-31', '2003-12-31'], dtype='datetime64[ns]', freq='A-DEC', tz=None) 年度索引到任意月份的开始
    如果您需要将其从特定时间改为每年一次,请使用anchored offset
    例如。 pd.date_range(start=pd.datetime(2000, 1, 1), periods=10, freq='AS-AUG')退货DatetimeIndex(['2000-08-01', '2001-08-01', '2002-08-01', '2003-08-01'], dtype='datetime64[ns]', freq='AS-AUG', tz=None)从任意日期开始的年度索引
    要从任意日期开始编制索引,请从该日期开始系列,并使用自定义 DateOffset 对象。
    例如。 pd.date_range(start=pd.datetime(2000, 9, 10), periods=4, freq=pd.DateOffset(years=1))退货DatetimeIndex(['2000-09-10', '2001-09-10', '2002-09-10', '2003-09-10'], dtype='datetime64[ns]', freq='<DateOffset: kwds={'years': 1}>', tz=None)

    关于python - 如何创建以年为频率的 Pandas DatetimeIndex?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32168848/

    10-12 20:05