在熊猫数据框中,将一列中的数字添加到另一列中的日期

时间:2019-12-04 11:33:17

标签: python-3.x pandas datetime timedelta

我的第一个没有打印“ Hello World”的python项目-保持柔和。尝试过类似问题的答案,但它们似乎无效。

我正在处理一个Excel文件,将其解析为pandas数据框。

我有一个计算列,该列计算以后要添加到日期的天数。添加列的天数如下所示,其中“ choices”是整数列表。这似乎工作正常。

choices = [0,0,925,778,567,608, 638,730]

df['Days_to_add'] = np.select(conditions, choices, default=0)

我现在要将其添加到现有的日期列中,以返回具有新日期的新列。到目前为止,我已经尝试过了,但是Jupyter说它已经贬值了,并且在以后的版本中会返回TypeError:

df["Estimated Start"] = pd.to_timedelta(df["Date1"]) + df['Days_to_add']

也尝试过:

df['Estimated_Start'] = df.Max_Dec_Date + pd.DateOffset(df['Days_to_add'])

还有其他一些告诉我使用timedelta索引的内容,以及其他一些指向timedelta范围的内容。我认为问题与尝试将整数添加到序列有关吗?

任何一项都没有成功。帮助吗?

1 个答案:

答案 0 :(得分:0)

日期不是TimeDelta,而是DateTime, 所以添加应该像这样:

df["Estimated Start"] = pd.to_datetime(df["Date1"]) + pd.to_timedelta(df['Days_to_add'], unit='D')