我正在尝试创建一个新列,该列根据某些条件分配唯一的ID。例如“名称”列使用以下内容:
dt['id'] = dt.groupby(dt.name.tolist(), sort=False).ngroup() + 1
数据示例:
Name Date
John 01-01-2020
Jane 02-01-2020
John 03-01-2020
Smith 03-01-2020
收件人
Name Date UID
John 01-01-2020 33
Jane 02-01-2020 34
John 03-01-2020 33
Smith 03-01-2020 35
再次运行时,ID会更改:
Name Date UID
John 01-01-2020 54
Jane 02-01-2020 55
John 03-01-2020 54
Smith 03-01-2020 56
但是,当重新运行数据框或将更多数据附加到该数据框时,它不会生成一致的数据。任何帮助表示赞赏。预先感谢。