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

如何用向量化方法(无for循环)分析Pandas故障维修数据

设备故障与维修关联分析需求

原始数据

以下是记录设备故障与维修情况的Pandas DataFrame:

import pandas as pd

id = ['A','A','A','A','A','B','B','B']
workcycle = [0,4,5,100,140,0,5,20]
date = ['2022-01-01','2022-01-01','2022-01-02','2022-02-04','2022-03-10','2022-01-01','2022-01-02','2022-02-04']
failure_type=['A','B',None,'B',None,'A',None,None]
repair_type=[None,None,'Repair_Type_1',None,'Repair_Type_2',None,'Repair_Type_1','Repair_Type_2']
event=['failure','failure','Repair','failure','Repair','failure','Repair','Repair']

df = pd.DataFrame({
    'id': id,
    'workcycle': workcycle,
    'date': date,
    'failure_type': failure_type,
    'repair_type': repair_type,
    'event': event
})

分析目标

基于*workcycle(工作周期)*维度,确定维修活动对故障的主要贡献关系。

判定规则

  • 故障发生在维修前30个workcycle内
  • 维修后30个workcycle内未出现同类型故障
  • 同时满足以上两点时,认定该维修是对应故障的主要解决措施(示例:ID为A、workcycle为5的维修是ID为A、workcycle为0的故障的主要解决措施)

限制条件

若某故障后存在两次及以上维修,且其中任意两次维修的workcycle差值小于30,则不对该故障进行关联判定。

实现要求

需使用np.where、loc等向量化方法实现,避免使用过多for循环。

内容的提问来源于stack exchange,提问作者stat_man

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 12:02:49