我有两栏:“问”和“回答”,但“回答”是一个对象,而“询问”是datetime64 [ns],所以我将'已回答'转换为日期时间:将负日期时间转换为NaT
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的帮助下,我试图把负天进一个NAT,但当我这样做时什么都没有发生:
df.update(df[['Days']].mask(df < 0))
我该如何将负面日子转换为NaT?
谢谢@jezrael我一直在为此工作数小时。你的解决方案和详细的解释真的帮了我。 –