DIA专栏(四) | 从案例认识数据集:数据元素、数据记录与数据集究竟如何构成?
上一篇文章,我们讨论了一个看似简单、实际上经常被忽视的问题:我们真的知道什么是“数据集 ”吗?在实际工作中,很多人每天都在建设数据集、使用数据集、管理数据集,但当被问到以下问题时,往往并不容易回答:
1) 一个数据集究竟应该描述什么对象?
2) 一个字段和一个数据元素有什么区别(见下面注释)?
3) 一条数据记录究竟代表什么?
4) 应该如何定义一个数据集?
5) 构建数据集是先有数据,还是先有结构?
6) 为什么同样是数据集,临床数据集、样本数据集和人工智能训练数据集 的结构完全不同?
这些问题,仅仅依靠概念解释并不容易真正理解。因此,本文在上一篇文章谈论的基础上,直接通过我们熟悉的业务前提下,通过4个实际案例,分别展示:Data Element → Dataset Definition → Data Record → Dataset Instance,在不同业务场景下究竟是如何形成的。

注释:字段是数据集中的一个“存储位置/结构位置”;数据元素是具有明确业务或科学语义、可以被定义、采集和解释的“最小数据单元”。
一、胃癌患者 HER2 状态数据集
这是一个最典型的临床数据集。假设我们希望建立一个数据集,用于描述胃癌患者的HER2状态及其相关临床特征。
1. 首先确定数据对象
这里的数据对象是胃癌患者。因此,数据集需要回答的是每一名胃癌患者的哪些数据与HER2状态相关?
2. Data Elements:确定记录哪些数据
我们选择以下数据元素:Patient ID、Age、Sex、Tumor Site、HER2 Testing Method、HER2 Expression 与 HER2 Status。例如:Age = 62,其中Age是Data Element; 62 是该 Data Element 在具体患者身上的数据值(Data Value)。同样:HER2 Expression = 3+,其中HER2 Expression 是DataElement; 3+ 是具体数据值。
3. Dataset Definition:定义数据集的结构
在实际采集患者数据之前,需要先定义一个胃癌患者的HER2状态数据应该包含哪些数据:

4. Data Record 形成了一个患者的实际数据记录
在实际采集患者数据之前,需要先定义一个胃癌患者的HER2状态数据应该包含哪些数据:

这一整行就是一条:Data Record,它描述的是患者GC001的实际HER2相关状态。
5. Dataset Instance:形成实际的数据集
按照定义的数据集结构,继续纳入更多患者,这些结构相同的患者记录共同构成胃癌患者 HER2 状态数据集的实际数据内容,即 Dataset Instance:

这个例子说明 Data Object = 患者;Data Record = 一个患者的完整记录;Dataset Instance = 多个患者记录的集合。在这里,一个患者通常对应一条Data Record。但是,我们将在下面的例子中,发现这并不是所有数据集的情况 或者不是适用于所有数据集。
二、医学影像:胸部CT肺结节数据集
现在换一个完全不同的场景,假设我们要建立一个数据集,用于描述胸部CT中肺结节的影像学特征。
1. 数据对象发生了变化
这里的数据对象不再是“患者整体 ”,而是一次 CT 检查中的一个肺结节。这意味着一个患者可能有:一次CT检查;多次CT检查;一个肺结节;多个肺结节。因此,数据集的记录单位也必须相应发生了变化。
2. Data Elements
我们选择:研究编号、患者编号、结节位置、结节直径、结节密度、结节边 缘、影像科医师评估。例如:结节直径 = 18 mm;其中结节直径是 DataElement;18 mm是具体数据值。
3. Dataset Definition
数据集结构可以定义为:每一个肺结节记录哪些影像特征。

4. Data Record
这一行代表:一次CT检查中一个具体肺结节的结构化数据。它并不是患者P001的全部数据。

5. Dataset Instance
继续纳入更多肺结节:

这就形成了肺结节影像特征数据集的 Dataset Instance(数据集实列)。这个例子最重要的特点是同一个患者可能产生多条Data Records:
Patient P001
Nodule 1
Nodule 2
Nodule 3
因此,Data Record 的数量不一定等于患者数量。数据集的核心不是一个患者 一行,而是一条记录究竟代表什么数据对象。
三、生物样本库:血液样本质量控制数据集
我们再来看看我们很熟悉的一个与生物样本库直接相关的场景。假设我们需要建立血液样本质量控制数据集。
1. 数据对象
这里的数据对象是一份具体的生物样本。不是患者,也不是一次临床检查。
2. Data Elements
例如:
• Sample ID
• Patient ID
• Sample Type
• Collection Time
• Processing Time
• Storage Temperature
• Freeze –Thaw Cycles
• Hemolysis Index
• Sample Quality Status
例如:Freeze –Thaw Cycles = 2
其中:Freeze –Thaw Cycles是Data Element; 2 是具体数据值。
3. Dataset Definition
数据集结构可以定义,这意味着每一份样本都按照相同的结构进行质量描述。

4. Data Record
例如,下面这一行代表样本 S001 的一条完整质量记录。

5. Dataset Instance
继续纳入更多样本,这就形成了:生物样本质量控制数据集的 Dataset Instance。

这个例子体现了一个非常重要的特征,同一个患者可以对应多个样本:
Patient P001
Sample S001
Sample S002
Sample S003
因此,一个患者不一定对应一条Data Record。在生物样本库中,Data Record 的最小对象可能是:
一份样本;
一个样本管;
一次样本处理事件;
一次冻融事件;
一次质量检测。
这取决于:数据集到底希望描述什么。
四、再看一个公共卫生场景:糖尿病患者随访数据集
为了进一步说明数据集的不同业务场景,我们再看一个长期随访数据集。 假设我们建立2型糖尿病患者年度随访数据集。
1. 数据对象
这里的数据对象不是患者,而是患者在某一次特定随访时间点的疾病状态。 例如:
• 患者 P001 在 2024 年随访;
• 患者 P001 在 2025 年再次随访;
• 患者 P001 在 2026 年再次随访。
每一次随访都可以形成一条记录。
2. Data Elements
例如:
• Patient ID
• Follow-up Date
• HbA1c
• Fasting Glucose
• Body Weight
• Blood Pressure
• Medication Status
• Complication Status
3. Dataset Definition

4. Data Record
例如

这条 Data Record 代表:患者 P001 在 2025 年 6 月 1 日这一次随访时的疾病状态。
5. Dataset Instance
同一个患者可以产生多条记录:

这就形成了:糖尿病患者纵向随访数据集的 Dataset Instance。
这个例子特别说明同一个患者:在患者基础信息数据集中可能只有一条记录; 在样本数据集中可能有多条记录;在随访数据集中可能有几十条记录。 因此,
同一个真实世界对象,在不同数据集中可以对应不同数量、不同结构和不同含义的 Data Records。

五、实际工作中,如何从零开始构建一个数据集?
通过以上四个例子,可以把实际工作过程具体化为以下步骤。
第一步:先问——我究竟要描述什么?
是:患者? 样本? 影像? 病灶? 一次随访? 一次实验? 一个 AI 训练样本? 如果这个问题没有回答清楚,后面的数据集很容易失去边界或约束方式。
第二步:确定一条 Data Record 代表什么
例如:胃癌 HER2 数据集,一条记录 = 一个患者;肺结节数据集,一条记录 = 一 个肺结节;样本质量数据集,一条记录 = 一份样本;糖尿病随访数据集,一条记 录 = 一次随访。这一步非常关键,Data Record 的定义,实际上决定了数据集的基本颗粒度。
第三步:确定每条记录需要哪些 Data Elements
例如:一个患者→ 年龄、性别、肿瘤部位、HER2 状态;一个肺结节→ 位置、 大小、密度、边缘;一份样本→ 样本类型、处理时间、冻融次数、质量状态;一次随访→ HbA1c、体重、血压、并发症
第四步:形成 Dataset Definition
也就是先建立“这个数据集应该长什么样? ”而不是先打开数据库,然后问: “我们现在有什么数据? ”
第五步:按照结构采集数据
当结构确定后:

这时,数据集才真正形成。
结语:
真正的数据集,不是“有很多数据”,而是“有明确的组织对象”
通过这四个例子,我们可以看到,同样是一个数据集:
• 胃癌数据集的核心对象可以是患者;
• 影像数据集的核心对象可以是肺结节;
• 生物样本数据集的核心对象可以是一份样本;
• 随访数据集的核心对象可以是一次随访。
因此,实际工作中,建设数据集时最先需要回答的,并不是“我们现在有哪些数据? ”而是“这个数据集究竟要描述什么对象? ”
在此基础上,进一步确定一个对象需要记录哪些 Data Elements?
然后定义 Dataset Definition。最后按照这一结构形成 Data Records。
多个具有一致结构和语义的Data Records,最终形成 Dataset Instance。 所以,一个数据集的形成过程,最直观地可以表示为:

新闻中心
News Senter
上海生物芯片有限公司
Shanghai Biochip Co., Ltd.
版权所有©上海生物芯片有限公司
电子邮箱:
marketing@shbiochip.com
地址: 上海市浦东新区张江高科技园区李冰路151号
技术电话:
4001002131
扫描查看
微信公众号
联系电话:
021-51320288