如何用bupaR提取流程地图中的节点时间数据?
解决bupaR节点时间数据提取问题及process_map的实现逻辑
提取节点时间数据的直接方法
要获取和process_map节点上一致的时间统计值,直接用activity_aggregator函数即可——这是bupaR专门用于聚合活动(节点)层面数据的工具,示例代码如下:
my_data %>% activity_aggregator( performance(FUN = mean, units = "hours"), append = FALSE )
运行后会直接返回每个活动的均值时间统计结果,和流程图节点显示的数值完全匹配。
process_map提取节点数据的底层逻辑
process_map生成节点性能数据时,底层依赖的就是activity_aggregator的计算逻辑:
- 先按活动名称对数据分组,计算每个活动的停留时长(基于数据中的时间字段,比如活动开始到结束的间隔)
- 再应用你指定的统计函数(比如
mean)和时间单位(比如hours)完成聚合,最后把结果绑定到流程图的节点上展示。
另外提一句,你贴的process_matrix代码有语法错误,正确写法应该是:
my_data %>% process_matrix(performance(FUN = mean, units = "hours"))
但它确实只负责处理流程流转边的统计,节点数据还是得靠activity_aggregator提取。
内容的提问来源于stack exchange,提问作者steve
相关产品推荐
相关产品推荐

