当前位置: 首页 > 知识库问答 >
问题:

在熊猫的约会中增加几个月

连乐
2023-03-14

这是我尝试过的:

#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'

共有1个答案

谢高峯
2023-03-14

您可以使用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
 类似资料:
  • 这应该是从pandas的文档中进行的简单查找,但我失败了。如何在pandas的 本来应该给我想要的结果,但现在我得到了时间,这意味着下面的计算结果总是:

  • 我有一个数据帧,看起来像: 我希望按周分组,然后汇总总数。此外,我需要找到一周的最早日期和最晚日期。第一部分相当简单: 我试图找到最小/最大日期,但没有成功: 如何找到出现的最早/最晚日期?

  • 我试图将熊猫数据帧列转换为日期时间。它是完美的工作,直到我卸载并再次安装python。我使用Python 2.7.10,蟒蛇2.4.0(64位)。熊猫版本'0.17.1'。这是我的代码: 我得到以下错误消息: 文件“…\AppData\Local\Continuum\Anaconda2\lib\site packages\spyderlib\widgets\externalshell\sitecu

  • 问题内容: 我试图弄清楚如何在Pandas数据框中的日期中添加3个月,同时将其保持为日期格式,因此可以使用它来查找范围。 这是我尝试过的: 但是,出现以下错误: 问题答案: 你可以用 另一种使用方式 细节

  • 问题内容: 我有两个,都被索引。我需要将元素添加在一起以形成一个new ,但前提是索引和列相同。如果该项不存在于之一,则应将其视为零。 我试过使用,但这无论索引和列如何。还尝试了一个简单的方法,但是如果两个数据框都没有该元素,则给出a 。 有什么建议? 问题答案: 怎么样

  • 我有项目租赁应用程序。我需要决定在date_finish和date_start(包括这些日期)之间的日期中是否有car可用。我有模型车和订单。订单有很少的字段:和、如何只取这些在start_date和stop_date之间可用的CARID(包括这两天)。 汽车: 订单: 状态:1为新订单,2为当前持续的订单,3为存档/已完成的订单 mongoose查询: 那个查询不起作用。谁能帮我? 编辑:我必须