pandas - 条件行号 Pandas
问题描述
我需要根据特定条件将行号添加到我的数据框中,下面是图像输入数据框。
我的数据框中需要一个行号列,如下图所示(排名列)。
因此,当在组中找到“RequestResubmitted”值时,我希望再次将排名重置为 1。
解决方案
让我们尝试cumsum
创建 cub 密钥和groupby
+cumcount
s=df.groupby([df['Word Order Code'],df['Status Code'].eq('Request Submitted').cumsum()]).cumcount()+1
df['rank']=s
推荐阅读
- django - 如何在 django 中保存来自 post 请求的数据?
- haskell - 由于我使用了警卫,我的代码导致解析错误
- python - 在Windows上的python中将一个类传递给多处理池
- vim - 从 Gdiffsplit 回来!三向视图
- c# - 为什么内存在持续运行的基于.Net CORE 2.2 + EF 核心的调度控制台中没有释放
- oracle - DBMS_METADATA.GET_DDL 在 PROCEDURE 中不起作用
- sql - XML 表 - 参数化路径
- python - 如何在 django rest 框架中部分更新模型?
- ruby - 每个循环跳过数组中的值
- javascript - 在jQuery中查找元素的整体索引