案例三:计算地层平均厚度

案例概述

本案例演示如何从 GDIM 平台读取地层表,并统计每个地层的平均厚度。

你将学到

通过一个完整的 Pipeline 串联『读取表格-分组统计-输出结果』的流程。

  • PipeLine 组织应用名称、工作空间与运行流程。

  • GdimTableReader 从 GDIM 读取指定字段的地层表。

  • TableCalculatorlayer_numbermaterial_name 分组并计算平均值。

  • 保存 .pipe 文件并运行 Pipeline 查看统计结果。

实现思路

  1. 创建 PipeLine,并使用``token``和``proj_id``登陆 GDIM。

  2. 通过 GdimTableReader 读取地层表字段:层号、岩性、层厚。

  3. 使用 TableCalculator 按层号和岩性分组,计算 layer_thickness 的均值。

  4. 将读取模块输出连接到统计模块输入,保存并运行 Pipeline。

  5. calc_avg.OutputTable.data 查看每层平均厚度结果。

关键代码

本例关键在于读取地层表后,按分组计算平均层厚,对应代码如下。

read_tables = GdimTableReader("ReadTables")
read_tables.table_fields = {
    "layer_table": ["layer_number", "material_name", "layer_thickness"]
}

calc_avg = TableCalculator("CalcAvgThickness")
calc_avg.group_by = ["layer_number", "material_name"]
calc_avg.column_templates = {"avg_layer_thickness": "{mean(layer_thickness)}"}

pipeline.add_links(read_tables.OutputTable >> calc_avg.InputTable)
pipeline.run()

更进一步

完整代码请查看以下链接中的『案例』:

Start2-BasicUseOfPipeline.ipynb