1. 日报基础字段完整性核查
为什么先做完整性核查
钻井液日报是后续所有诊断的输入源。密度、漏斗黏度、失水、泥饼厚度、含砂量、pH 值这六项属于现场判断井眼清洁、滤失控制与化学平衡的核心参数,任何一项缺失都会让后续的趋势分析、异常跳变识别和单位换算失去基准。因此第一步不是判断数值对错,而是确认"该有的字段有没有值"。
完整性核查的判定规则很简单:字段存在且填写了可解析的数值(或明确标注"未测/无"),才算"已填";字段为空、只有单位没有数值、或填了"—""/""待补"等占位符,一律记为缺失。核查只做标记,不做数值合理性判断——那是后续案例的任务。
核查对象与字段清单
以一份典型的单日钻井液日报为例,需要逐项核对的必填字段如下(字段名以现场日报常见写法为准,实际报表可能略有差异,核查时以本井报表模板的字段定义为准):
| 序号 | 字段 | 常见单位 | 缺失判定示例 |
|---|---|---|---|
| 1 | 密度 | g/cm³ | 空白、仅写"g/cm³" |
| 2 | 漏斗黏度 | s | 空白、填"—" |
| 3 | 失水 | mL/30min | 空白、填"待补" |
| 4 | 泥饼厚度 | mm | 空白、填"/" |
| 5 | 含砂量 | % | 空白、仅写"%" |
| 6 | pH 值 | 无量纲 | 空白、填"未测" |
核查流程与标记方式
实际操作可以按"取字段值 → 去空白 → 判断是否可解析为数值 → 记录状态"四步走。下面给出一段可直接运行的 Python 示例,用字典模拟一份日报记录,输出每个字段的核查状态和缺失清单。示例数据为教学构造,不代表任何真实井的实测值。
REQUIRED_FIELDS = ["密度", "漏斗黏度", "失水", "泥饼厚度", "含砂量", "pH值"]
# 教学示例:一份存在多处缺失的日报记录
daily_report = {
"密度": "1.28",
"漏斗黏度": "", # 空白
"失水": "4.6",
"泥饼厚度": "—", # 占位符
"含砂量": "0.3",
"pH值": None, # 未填写
}
PLACEHOLDERS = {"", "—", "-", "/", "待补", "未测", "无"}
def check_field(value):
"""返回 (是否已填, 说明)"""
if value is None:
return False, "字段为空"
text = str(value).strip()
if text in PLACEHOLDERS:
return False, f"占位符:{text!r}"
try:
float(text)
return True, "已填"
except ValueError:
return False, f"无法解析为数值:{text!r}"
missing = []
for field in REQUIRED_FIELDS:
ok, note = check_field(daily_report.get(field))
status = "OK" if ok else "缺失"
print(f"{field:<6} {status:<4} {note}")
if not ok:
missing.append(field)
print("\n待补录字段:", "、".join(missing) if missing else "无")
print(f"完整率:{len(REQUIRED_FIELDS) - len(missing)}/{len(REQUIRED_FIELDS)}")
按上述示例数据运行,预期输出为:密度、失水、含砂量三项 OK;漏斗黏度(空白)、泥饼厚度(占位符"—")、pH 值(None)三项缺失,待补录字段为"漏斗黏度、泥饼厚度、pH值",完整率 3/6。这里的输出是依据给定输入直接推出的结果,不是实测运行记录。
把
PLACEHOLDERS 集合按本井报表的实际占位写法维护,比逐条写 if 判断更易扩展;新增必填字段时只需改 REQUIRED_FIELDS 列表。核查结果的结构化呈现
下面的图示把六个必填字段的核查路径与最终标记结果放在一起:左侧是字段取值,中间按"空值 / 占位符 / 可解析数值"分流,右侧落到"已填"或"缺失待补录"两种状态,并汇总出完整率。这样一眼就能看出哪些字段需要回现场补测。
补录与复核要点
- 缺失项回现场补测:漏斗黏度、泥饼厚度、pH 值需按当日实际测量补录,不能凭相邻日期数值推算填入,否则会污染后续趋势判断。
- 占位符统一处理:报表中"—""/""待补"等写法应统一归入缺失,避免被误当作有效值参与统计。
- 复核通过条件:六项字段全部为可解析数值,完整率达到 6/6,且补录值与当日其他记录(如测量时间、班次)能对应,方可进入下一步的单位与量纲核查。
完整性核查只回答"有没有值",不回答"值对不对"。密度单位混用、漏斗黏度跳变等问题需在后续核查中单独处理,不要在本步提前下结论。