当前位置: 首页 > 面试题库 >

在熊猫市的日期中添加月份

程赞
2023-03-14
问题内容

我试图弄清楚如何在Pandas数据框中的日期中添加3个月,同时将其保持为日期格式,因此可以使用它来查找范围。

这是我尝试过的:

#create dataframe
df = pd.DataFrame([pd.Timestamp('20161011'),
                   pd.Timestamp('20161101') ], columns=['date'])

#create a future month period
plus_month_period = 3

#calculate date + future period
df['future_date'] = plus_month_period.astype("timedelta64[M]")

但是,出现以下错误:

AttributeError: 'int' object has no attribute 'astype'

问题答案:

你可以用 pd.DateOffset

In [1756]: df.date + pd.DateOffset(months=plus_month_period)
Out[1756]:
0   2017-01-11
1   2017-02-01
Name: date, dtype: datetime64[ns]

另一种使用方式 pd.offsets.MonthOffset

In [1785]: df.date + pd.offsets.MonthOffset(plus_month_period)
Out[1785]:
0   2016-10-14
1   2016-11-04
Name: date, dtype: datetime64[ns]

细节

In [1757]: df
Out[1757]:
        date
0 2016-10-11
1 2016-11-01

In [1758]: plus_month_period
Out[1758]: 3


 类似资料:
  • 问题内容: 我想在用户输入的结束日期前加上2个月。如何在结束日期前加上2个月并显示呢? 任何帮助表示赞赏。谢谢! 问题答案: 您需要获取增加数月的业务规则。简单的解决方案是: 但是,这将从7月31日更改为9月31日,并将转换为10月1日。同样,1月31日加上1个月是2月31日,根据是否是leap年,它将转换为3月2日或3月3日。 您可能希望第一次是9月30日,第二次是2月28日或29日(取决于是否

  • 问题内容: 我的数据可以在给定日期包含多个事件,也可以在一个日期包含否事件。我接受这些事件,按日期计数并绘制它们。但是,当我绘制它们时,我的两个系列并不总是匹配。 在上面的代码中,idx变为30个日期范围。2019/09/01至2019/09/30但是S可能只有25或26天,因为在给定日期没有事件发生。然后,当我尝试绘图时,由于大小不匹配,我得到一个AssertionError: 解决这个问题的正

  • 问题内容: 我有一个固定宽度的数据文件,其中包含日期,但是当我尝试绘制数据时,日期无法在x轴上正确显示。 我的档案看起来像 等等 我用 熊猫 读文件 所以我想这里的问题是从熊猫到matplotlib日期时间的转换,如何进行转换? 我也直接尝试了熊猫: 但这失败了 TypeError:空的“ Series”:没有要绘制的数字数据 问题答案: 如果您使用包含列名而不是字符串的列表,则data.set_

  • 我不确定这是否可能? 我得拿到密码才能读 今天的月份即2月今天的日期即17月底的日期即31日,然后是一年中的其他11个月,在一行中按顺序排列 8月1日-31日|9月|10月|11月|12月|1月|2月|3月|4月|5月|6月|7月 请以最佳方式提供任何建议? 多谢 定时(timing的缩写)

  • 这是我尝试过的: 然而,我得到以下错误:

  • 问题内容: 我想在JavaScript中添加几个月的日期。 例如:我要插入日期(格式),现在我要在此日期前加上8个月。我希望结果是。 因此,增加月份时,年份也可能增加。 问题答案: 已于2019年6月25日更正: 旧