【问题标题】:Creating a date range in Pandas/Python with just the year在 Pandas/Python 中创建一个只有年份的日期范围
【发布时间】:2020-07-13 20:41:33
【问题描述】:

我有一个数据框,df。此数据框包含一个名为“加入年份”的列。我需要创建一个日期范围。我试过运行这段代码,但没有成功

index = df.AccessionYear.date_range(start = '1877',end='2020')

很遗憾,此列没有月份或日期,只有年份。我收到的错误消息是“AttributeError: 'Series' object has no attribute 'date_range'”。有人碰巧知道其他方法吗?

【问题讨论】:

    标签: python pandas jupyter


    【解决方案1】:

    date_range 是来自pandas 类的方法,你应该这样做:

    import pandas as pd
    index = pd.date_range(start = '1877',end='2020')
    

    【讨论】:

      【解决方案2】:

      仔细阅读错误信息,想想你的代码。

      Accession_Year 是一列字符串(从您尝试调用该方法推断出来)。为什么你认为一列字符串有一个方法date_range

      如果您需要一个绝对日期范围,如您的帖子中所述,您为什么要在通话中插入Accession_Year?你使用简单

      pd.date_range(start='1877', end='2020')
      

      如果列确实影响调用,需要说明如何,如

      pd.date_range(start=df.Accession_Year.min(), end='2020')
      

      【讨论】:

      • 谢谢。我假设我必须调用该列,以便 python 知道我需要哪一列的日期范围
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-07
      • 1970-01-01
      • 2010-11-02
      相关资源
      最近更新 更多