如何从另一个Pandas时间序列创建Pandas数据框列?

时间:2019-03-20 15:17:54

标签: python pandas dataframe

我有一个带有Datetime列的数据框:

Parcela     DS1        DC1         DS0        DC0
P1      2016-04-26  2016-09-26  2016-04-11  2016-09-11
P2      2016-04-26  2016-09-26  2016-04-11  2016-09-11

我尝试使用以下代码创建新列:

df['sem'] = prec[df['DS0'].dt.strftime('%Y-%m%d'):df['DS1'].dt.strftime('%Y-%m-%d')].sum()

其中prec是另一个具有日期时间索引的数据框,

 Datetime               prec
 2016-04-13 00:00:00    0.0
 2016-04-13 00:10:00    0.0

但出现以下错误

Cannot convert input of type <class 'pandas.core.series.Series'> to Timestamp

你能帮我吗?

1 个答案:

答案 0 :(得分:1)

您可以通过

进行检查
df['sem'] = [prec.loc[x:y,'prec'].sum() for x , y in zip(df['DS0'].dt.strftime('%Y-%m%d'),df['DS1'].dt.strftime('%Y-%m-%d'))]