You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Python实现PIA_Status触发的Task Status设置与空行处理?

Python实现指定规则的数据处理

核心思路是按Application ID分组,判断每组是否存在PIA_Status为"Completed"的记录,再根据规则更新Task Status列。以下是完整实现代码:

import pandas as pd

# 加载数据(替换为你的数据源路径或读取方式)
df = pd.read_csv("your_data_source.csv")

def process_application_group(group):
    # 检查当前Application ID组是否有已完成的记录
    has_completed_entry = (group["PIA_Status"] == "Completed").any()
    if has_completed_entry:
        # 标记未开始/进行中的任务为closed
        group.loc[group["PIA_Status"].isin(["Not Started", "Started"]), "Task Status"] = "closed"
        # 清空已完成记录的Task Status
        group.loc[group["PIA_Status"] == "Completed", "Task Status"] = ""
    return group

# 分组处理后合并结果
df_processed = df.groupby("Application ID", group_keys=False).apply(process_application_group)

# 保存处理后的数据(按需调整输出格式)
df_processed.to_csv("processed_data.csv", index=False)

关键说明:

  • 分组逻辑:通过groupby("Application ID")确保同一应用ID的所有行被统一处理
  • 条件判断:any()方法快速检测组内是否存在"Completed"状态的记录
  • 列更新:使用loc精准定位目标行,避免误修改其他数据
  • 无"Completed"记录的组:保持原Task Status值不变

内容的提问来源于stack exchange,提问作者Prasanna S US

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 16:25:15