【发布时间】:2017-07-15 11:53:04
【问题描述】:
我有两列:“已询问”和“已回答”,但“已回答”是一个对象,而“已询问”是 datetime64[ns]。所以我将“已回答”转换为日期时间:
df['answered'] = pd.to_datetime(df['answered'])
index, asked, answered
0 2016-07-04 07/07/2016
1 2016-07-03 07/01/2016
2 2016-07-05 07/09/2016
3 NaT NaN
然后,我制作了第三列,给出了两者之间的时间差异:
df['Days']= df['answered'] - df['asked']
index, asked, answered, Days
0 2016-07-04 07/07/2016 3 days
1 2016-07-03 07/01/2016 -2 days
2 2016-07-05 07/09/2016 4
3 NaT NaN NaT
在@piRSquared 的帮助下,我试图将负数 Days 变成 NaT,但是当我这样做时什么也没发生:
df.update(df[['Days']].mask(df < 0))
我怎样才能把消极的日子变成 NaT?
【问题讨论】: