用途:面向建筑项目数据整合,将来自 BIM、进度计划、成本、传感器等不同来源的 DataFrame 合并,处理列名不一致、键不统一和数据质量问题。主要能力:内置常见建筑列名映射(如 element_id、type_name、level、material、cost、task_id、日期等),可自动标准化列名;支持 INNER、LEFT、RIGHT、OUTER、CROSS 五种合并策略;能在两表间自动查找共同键,优先选择类 ID/编码列,并在无完全相同列名时按语义相似度匹配;返回合并结果对象,包含合并后的 DataFrame、匹配行数、左右独有行数和 0-1 的合并质量分;支持多表顺序合并;提供基于 difflib 的模糊字符串合并;并派生出 BIM 与进度合并、成本与工程量合并两个专用子类。使用方式:以 Python 方式导入类并实例化,调用 merge、merge_multiple、fuzzy_merge 等方法,可先通过 harmonize_columns 标准化列名,未指定合并键时由工具自动查找;专用类提供 merge_bim_schedule 与 merge_cost_qto。适用场景:BIM 元素与进度活动关联、成本单价与工程量清单计价、多来源建筑数据集整合。限制:模糊匹配合并为近似字符串匹配,不保证语义正确,必要时需人工指定键;BIM 与进度匹配在示例中仅按描述做模糊匹配,通常需额外映射表;收费、平台、安装命令等信息暂未提供。
df-merger
数据与分析
更新于 10-15 20:33