我正在尝试计算同一ID中连续日期时间值之间的天数差异。
这是我的数据框和代码:
d = {'ID': ['a', 'a', 'a', 'a', 'b', 'b', 'b', 'b', 'c', 'c', 'c'],
'date': ['10/1/2010','10/1/2010','10/10/2010','10/10/2010','1/1/2001','3/1/2001','3/1/2001','6/1/2001','1/1/1990','3/1/1990','6/1/1990']}
df = pd.DataFrame(d)
df['date'] = pd.to_datetime(df['date'])
df['Days'] = df.groupby('ID')['date'].diff().fillna('')
df
然而,当连续日期彼此相同时,我得到“0天”。
例如,有两个'2010-10-10'是ID'a'的成员; '2010-10-10'的第一行的值为'9天',但第二行的返回'0天'。我的目标是编写一个代码,以便两者都有'9天'。