我们的开发团队使用项目开发的5个阶段:
按上述顺序(从最早到最新)。
每个项目都有其 ID 。将项目包含在DataFrame中 (阶段注册)表示该项目有时已输入 给定的阶段。 由于某些原因,行可能多次出现在DataFrame中,并且 与上面指定的顺序不同。
该寄存器的一个示例可以如下放置(我故意 删除其他列)。
ID Stage
679 forming
679 storming
679 adjourning
679 performing
679 storming
684 forming
684 storming
684 performing
684 performing
684 storming
876 forming
876 storming
876 forming
876 performing
876 adjourning
我想添加一个新列,例如 Latest ,重复 Stage 列, 每个项目,但仅表示引用此项目最新阶段的行 项目(在其他行中,此列应为空)。
如下所示:
ID Stage Latest
679 forming
679 storming
679 adjourning adjourning
679 performing
679 storming
684 forming
684 storming
684 performing performing
684 performing performing
684 storming
876 forming
876 storming
876 forming
876 performing
876 adjourning adjourning
由于可以为每个项目独立执行此列的创建, 我想这应该使用功能的分组和应用来完成, 像这样:
df['Latest'] = df.groupby('ID').apply(<a_function>)
但是不知道如何编写这样的函数。请给我一些线索。