Python:根据数据框中的现有列添加带有日期的新列

有一个带有值的 df:


   name        date

0   tom  01-07-2006

1   tom  07-07-2006

2   tom  13-07-2006

3   tom  19-07-2006

4  mark  01-07-2006

5  mark  07-07-2006

6  mark  13-07-2006

7  mark  19-07-2006

如何添加min date最小日期 + 1 的列


预期输出:


   name        date  min date

0   tom  01-07-2006  02-07-2006

1   tom  07-07-2006  02-07-2006

2   tom  13-07-2006  02-07-2006

3   tom  19-07-2006  02-07-2006

4  mark  02-07-2006  03-07-2006

5  mark  07-07-2006  03-07-2006

6  mark  13-07-2006  03-07-2006

7  mark  19-07-2006  03-07-2006


Qyouu
浏览 87回答 1
1回答

Cats萌萌

将列转换为日期时间,然后通过以下方式获得每组最小值GroupBy.transform并最后添加 1 天Timedelta:df['date'] = pd.to_datetime(df['date'], dayfirst=True)df['min date'] = df.groupby('name')['date'].transform('min') + pd.Timedelta(1, 'd')print (df)   name       date   min date0   tom 2006-07-01 2006-07-021   tom 2006-07-07 2006-07-022   tom 2006-07-13 2006-07-023   tom 2006-07-19 2006-07-024  mark 2006-07-02 2006-07-035  mark 2006-07-07 2006-07-036  mark 2006-07-13 2006-07-037  mark 2006-07-19 2006-07-03
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python