信息速览
MetaSUB 是「地铁与城市生物组宏基因组学与元设计」的缩写,2015 年由 Weill Cornell Medicine 的 Christopher Mason 与当时还是医学生的 Evan Afshin 发起,如今是一个横跨数十个国家、按月开电话会的国际联盟。它做的事说起来很朴素:把全球城市地铁与公交系统里最常被手碰到的那些表面擦一遍,把擦下来的东西全部拿去测序。核心图集 2021 年发在 Cell,规模是 60 座城市、4,728 份样本、跨 3 年,全部为鸟枪宏基因组。
它跟库内已有的微生物组资源不在同一个生境上。UHGG、GMrepo、curatedMetagenomicData、American Gut 采的都是人的肠道,样本单元是人;MetaSUB 的样本单元是一根扶手、一条长椅、一台售票机。这意味着它回答的不是「这群人肠子里有什么」,而是「这座城市每天被几百万人摸过的表面上,长着什么、带着哪些耐药基因」。城市因此成了分析单元,气候、人口密度、地表材质、是否地下,都成了可以回归的协变量。
本篇按「够不够用、能不能接、该不该选」三条线组织:先给规模与结构的硬数字,再拆字段与取数路径,最后交代它的边界——尤其是那些把它当人体微生物组数据用就会立刻出错的地方。规模数字以 Cell 论文为准,官网首页只讲联盟与项目、不列样本数;这一点在附录 B 里单独标了来源层级。一屏速览见下表。
| 维度 | 内容 |
|---|---|
| 中文名 | 地铁与城市生物组宏基因组计划 |
| 英文全名 | Metagenomics and Metadesign of Subways and Urban Biomes |
| 发起方 | Weill Cornell Medicine(Christopher Mason、Evan Afshin) |
| 发起年份 | 2015 |
| 联盟规模 | 数十个国家的研究者与城市负责人,按月例会 |
| 样本数 | 4,728 份(Cell 2021 论文口径) |
| 城市数 | 60 座 |
| 采样基质 | 地铁与公交系统表面拭子(扶手、长椅、售票机等) |
| 测序策略 | 鸟枪宏基因组,125 bp 双端,每样本 500 万–700 万读段 |
| 时间跨度 | 2015–2019,核心矩阵为 2016、2017 两个采样日 |
| 重复设计 | 无逐月重复;跨年两点设计 |
| 数据托管 | SRA(PRJNA732392)、ENA 镜像、GeoSeeq 门户 |
| 复现管线 | MetaSUB Core Analysis Pipeline(CAP) |
| 许可 | 论文 CC BY 4.0;读段公开无限制 |
| 记录粒度 | 一行 = 一份表面拭子样本 |
| 主要用途 | 城市微生物基线、耐药基因地理分布、建成环境监测 |
§1 它要解决的具体麻烦
1.1 城市表面是一个没有基线的空间
公共卫生监测有一套成熟的采样对象:病人、污水、媒介生物、食品。城市表面不在这套名单里。扶手、闸机、售票机每天被数万人触碰,理论上是最密集的微生物交换界面,但在 MetaSUB 之前,关于这些表面上到底有什么的研究,基本停留在单个城市、单个站点、几十份样本的规模上。没有统一协议,就没有可比性;没有可比性,就没有基线;没有基线,「今年这座城市的耐药基因是不是变多了」这个问题根本无法回答。
MetaSUB 的判断是:先把基线做出来,再谈监测。做法是把采样动作标准化到可以被几十个国家的志愿者队伍重复执行的程度——同一套拭子、同一份操作手册、同一天采样、同一套建库与测序参数、同一条分析管线。标准化带来的代价是分辨率让步:它放弃了单城市深挖,换来了跨城市可比。
这个取舍决定了这个数据集的全部性格。它不是为「把某座城市研究透」准备的,它是为「把很多城市放在一张表里比较」准备的。
| 在 MetaSUB 之前的状态 | MetaSUB 的处理 | 留下的问题 |
|---|---|---|
| 各城市自定拭子与运输方式 | 统一拭子型号与运输管,试剂盒统一寄送 | 现场操作者仍不同,手法差异无法消除 |
| 采样日期随机,无法跨城比较 | 定在每年 6 月 21 日同一天 | 只有夏季一个季节点 |
| 测序平台与读长各异 | 统一 125 bp 双端、5–7 百万读段 | 深度对低丰度类群仍不够 |
| 分析各写各的脚本 | 开源 CAP 管线统一处理 | 版本迭代会造成结果漂移 |
| 只报物种,不报功能 | 同步注释耐药基因与 CRISPR | 基因存在不等于表型表达 |
1.2 三条常见的错误期待
第一条,把它当人体微生物组数据用。这是最高频的误用。MetaSUB 的样本来自表面,其中确实混有大量人源和环境源片段,论文也专门讨论过哪些表面更接近人体皮肤菌群(门把手显著比窗户更接近皮肤),但整份数据的分析单元是「站点—表面—日期」,不是「人」。任何以个体为单位的推断——比如某个城市居民的肠道菌群特征——都无法从这里得到。
第二条,把它当耐药监测的现成答案。数据集里有耐药基因的相对丰度,也确实能看出城市间的类型与密度差异巨大,但相对丰度是「在总读段里占多少」,不是「每平方厘米多少个拷贝」。城市 A 比城市 B 高,可能只是因为 B 的样本里人源读段比例更高,把分母撑大了。把这种差异直接读成「A 城耐药问题更严重」,是把相对量当绝对量。
第三条,以为它是一份会持续更新的活数据。它是一次性交付的图集,配一条可复现的管线。联盟仍在采样(官网的城市地图页一直列到 2024 年),但那些新增样本不自动进入 2021 年这份矩阵,也没有承诺的更新节奏。想要新数据,得去看联盟的新论文或新项目。
把这三条并排看,会发现它们指向同一个认知错误:把「表面」当成了「人」。一旦采样单元被误认成个体,后面所有的定量假设、时间假设、更新假设都会跟着错。
1.3 它能给到的与给不到的
| 你的需求 | 它给的 | 够不够 |
|---|---|---|
| 城市尺度微生物组成基线 | 60 城、近五千份样本的物种丰度矩阵 | 够,且是目前唯一同协议跨城可比的一批 |
| 耐药基因的地理分布 | 按城市聚合的耐药基因家族丰度 | 够做描述,不够做风险定量 |
| 新物种与新病毒的发现 | 上万条候选病毒序列、上千条细菌候选 | 够做发现,需自行做质量筛选 |
| 单城深度剖面 | 每城十几到上百份样本 | 多数城市不够做城内精细分区 |
| 季节动态 | 两个 6 月采样日 | 不够,无法拆季节效应 |
| 空气与水体微生物 | 无 | 完全没有 |
| 临床结局关联 | 无任何健康结局字段 | 完全没有 |
| 绝对载量 | 无 | 完全没有 |
1.4 你的处境与它能帮到的事
| 你的处境 | 它能帮你什么 | 下一步该做什么 |
|---|---|---|
| 要给某座城市做微生物基线,但没有本地历史数据 | 提供同纬度、同气候带的其他城市作参照系 | 先按气候带筛出可比城市,再决定本地采样密度 |
| 要做耐药基因的环境监测方法学 | 提供跨 60 城的真实分布,可用于阈值与漂移的模拟 | 用 §5.5 的读法先算城市内方差,再定最小样本量 |
| 要训练微生物组分类模型,缺跨域泛化测试集 | 提供与人体肠道完全不同的生境,适合做域外测试 | 把它固定为测试集,不要混进训练集 |
| 想找新病毒或新 CRISPR 系统 | 提供上万条候选序列与阵列 | 先做完整性过滤,再用 §5.4 的管线复现 |
| 做城市设计或公共卫生政策 | 提供「表面材质与菌群关联」的证据 | 注意这是相关性,不能直接推出干预方案 |
| 只想找人体肠道数据 | 帮不上 | 去看 UHGG、GMrepo、curatedMetagenomicData |
1.5 一句话判断
这是目前唯一一份用同一套拭子、同一天、同一条管线,把全球六十座城市的地铁表面放在一张表里的宏基因组图集;它的价值在横向可比,它的局限也全部来自为了横向可比而做的让步。
1.6 不适合谁:四条边界
第一,不适合做任何以人为单位的分析。样本没有个体标识,也没有健康结局,连「这份样本附近有多少人」都只有城市级的人口密度。
第二,不适合做时间序列或季节分析。两个采样日都在 6 月,任何「季节效应」都只能靠城市间的纬度差异间接推断,而纬度与气候、材质、人口密度高度共线。
第三,不适合做绝对定量或载量估计。相对丰度的组成性约束在这里格外明显,因为人源读段的占比在城市间差异很大。
第四,不适合做临床或流行病学的因果推断。它没有病例,没有发病率,没有对照人群,只有表面上的基因。
还有两条常被忽略的边界,顺带说明:它没有采集空气与水体,所以任何与呼吸道气溶胶或污水相关的结论都无法从这里外推;它只覆盖轨道交通与公交系统,农村、住宅、医院、学校这些非交通生境一概没有。四条边界加上这两条,构成了使用前必须过一遍的检查单。
§2 数据构成与规格
2.1 一份样本就是一条记录
整个数据集的最小单元是一份表面拭子。它在采集现场被赋予一个样本编号,此后所有信息都挂在这个编号上:哪个城市、哪个站点、什么表面、什么材质、地上还是地下、几月几日采的、由哪支队伍采的、测序得到多少读段、比对到哪些物种、命中哪些耐药基因。分析时你拿到的通常是两张表:一张元数据表,一行一份样本;一张丰度表,一行一个物种或基因、一列一份样本。
两张表靠样本编号连接,这是唯一可靠的连接键。城市名有拼写变体,站点名有本地语言写法,表面类型有自由文本残留,都不能当主键。
| 表层 | 内容 | 粒度 | 连接键 |
|---|---|---|---|
| 元数据表 | 地理、时间、表面、空间属性 | 一行一样本 | sample_id |
| 物种丰度表 | 物种 × 样本的读段占比 | 稀疏矩阵 | sample_id |
| 耐药基因表 | 基因家族 × 样本的读段占比 | 稀疏矩阵 | sample_id |
| 功能注释表 | UniRef90 功能项 × 样本 | 稀疏矩阵 | sample_id |
| 新发现序列表 | 候选病毒、细菌、CRISPR 阵列 | 一行一条候选 | 候选编号 |
| 站点清单 | 城市、站点、经纬度、站点类型 | 一行一站点 | 城市 + 站点 |
2.2 字段完整字典
样本层字段是取数时最先要看的,它决定了你能做哪些分层。
| 字段 | 类型 | 含义 | 取值示例 | 缺失情况 |
|---|---|---|---|---|
| sample_id | 字符串 | 样本唯一编号 | 城市缩写加流水号 | 无 |
| city | 字符串 | 采样城市 | 城市英文名 | 无 |
| country | 字符串 | 国家 | 国家英文名 | 无 |
| site_name | 字符串 | 站点名称 | 站点本地名或英文名 | 少数缺失 |
| latitude | 浮点 | 纬度 | 带小数 | 少量缺失 |
| longitude | 浮点 | 经度 | 带小数 | 少量缺失 |
| collection_date | 日期 | 采集日期 | 年-月-日 | 集中在两个采样日 |
| surface_type | 枚举 | 表面类型 | 扶手、长椅、售票机、门把手、地面、窗 | 少量自由文本残留 |
| surface_material | 枚举 | 材质 | 金属、塑料、木材、玻璃、织物 | 部分缺失 |
| above_below | 枚举 | 地上或地下 | 地上、地下 | 部分缺失 |
环境与人口层字段决定了能不能做协变量校正,这一层缺失最影响建模。
| 字段 | 类型 | 含义 | 用途 | 缺失情况 |
|---|---|---|---|---|
| population_density | 浮点 | 城市人口密度 | 解释城市间差异 | 城市级,全覆盖 |
| temperature_june | 浮点 | 六月均温 | 气候协变量 | 城市级,全覆盖 |
| climate_class | 枚举 | 柯本气候分类 | 分层与聚类 | 城市级,全覆盖 |
| elevation | 浮点 | 海拔 | 高海拔城市校正 | 城市级 |
| coastal | 布尔 | 是否近海 | 湿度与盐雾影响 | 城市级 |
| region | 枚举 | 大洲或区域 | 分组统计 | 城市级 |
| transit_type | 枚举 | 轨道或公交 | 基质细分 | 多数为轨道 |
测序与分析层字段决定可比性,取数时必须先核对这一层。
| 字段 | 类型 | 含义 | 取值 | 备注 |
|---|---|---|---|---|
| instrument | 字符串 | 测序仪型号 | 以 HiSeq 系列为主 | 门户与镜像标注不一致 |
| read_length | 整数 | 读长 | 125 bp | 全部双端 |
| read_count | 整数 | 每样本读段数 | 500 万–700 万 | 论文口径 |
| adapter_trimmed | 布尔 | 是否去接头 | 是 | CAP 统一处理 |
| human_removed | 布尔 | 是否去人源 | 是 | 影响丰度分母 |
| taxonomy_db | 字符串 | 物种注释参考 | UniRef90 与 GTDB | 版本随管线 |
| amr_db | 字符串 | 耐药注释参考 | CARD 与 ResFinder | 版本随管线 |
| prevalence_class | 枚举 | 类群分层 | 核心、次核心、边缘 | 按出现率阈值 |
2.3 一条记录的完整解剖
把一条记录摊开看,能直观看到哪些字段是采出来的、哪些是算出来的。下面这份结构取自门户的样本页与论文表 S1 的列名,字段名做了统一,值是示意,不含真实样本。
{
"sample_id": "<city>-<site>-<surface>-<seq>",
"geo": {
"city": "<city>",
"country": "<country>",
"site_name": "<station>",
"lat_lon": [<lat>, <lon>],
"above_below": "underground"
},
"sampling": {
"date": "2016-06-21",
"surface_type": "ticket_kiosk",
"surface_material": "metal",
"swab": "Copan",
"team": "<city_team>"
},
"environment": {
"temperature_june_c": <temp>,
"population_density": <density>,
"climate_class": "<koppen>",
"coastal": true
},
"sequencing": {
"instrument": "HiSeq",
"layout": "PE125",
"reads": <reads>,
"human_reads_removed": true
},
"profile": {
"top_species": ["<species_a>", "<species_b>", "<species_c>"],
"core_member": true,
"amr_families": ["<family_a>", "<family_b>"]
}
}
采出来的字段是 geo、sampling 与环境三组,它们由现场人员填表;算出来的字段是 sequencing 与 profile,由管线生成。这个分界很重要:现场字段的错误是数据质量问题,算出来的字段的差异是管线版本问题,两者的处理方式完全不同。
| 字段组 | 产生环节 | 出错方式 | 处理建议 |
|---|---|---|---|
| geo | 现场填表 | 经纬度取站点中心,站点名拼写不一 | 以城市加站点编号为准 |
| sampling | 现场填表 | 表面类型自由文本、材质判断主观 | 先做枚举归一 |
| environment | 事后匹配 | 气象与人口数据年份不一致 | 记录匹配年份 |
| sequencing | 上机 | 读段数偏低、批次效应 | 设最小读段阈值 |
| profile | 管线计算 | 参考库版本变化 | 固定管线版本 |
2.4 城市与表面的构成
表面类型是这个数据集唯一真正的实验设计变量。每座城市至少采三类固定表面,其余可选,可选项由各城市自定。
| 表面类型 | 是否必采 | 接触强度 | 与其他表面的关系 |
|---|---|---|---|
| 扶手 | 必采 | 极高 | 与皮肤菌群最接近的一类 |
| 长椅 | 必采 | 高 | 与织物、木材材质强相关 |
| 售票机 | 必采 | 高 | 金属与塑料混合 |
| 门把手 | 可选 | 极高 | 显著更接近皮肤菌群 |
| 地面 | 可选 | 低但面积大 | 与土壤、室外输入相关 |
| 窗面 | 可选 | 低 | 与室外空气沉降相关 |
| 护栏与立柱 | 可选 | 中 | 与扶手类似但接触少 |
时间点只有三个,这是理解这份数据的关键约束。
| 时间点 | 性质 | 覆盖 | 用途 |
|---|---|---|---|
| 2015–2016 | 试点 | 少数城市 | 协议打磨,不进主矩阵 |
| 2016-06-21 | 首个全球采样日 | 多数城市 | 主矩阵主体 |
| 2017-06-21 | 第二个全球采样日 | 部分城市复采 | 跨年比较 |
| 2018–2019 | 联盟继续采样 | 城市自定 | 不在论文矩阵内 |
城市的分布高度不均,这是所有跨城比较都必须先处理的问题。超大都市的样本量足以主导全局聚类,中等城市代表性更好,参与较晚的城市方差大,单站点城市连城内变异都估不出来。做城市均值之前,先看一眼每座城市的样本量。
2.5 与同类资源的字段差异
| 字段维度 | MetaSUB | 人体肠道宏基因组库 | 16S 参考序列库 |
|---|---|---|---|
| 样本单元 | 表面拭子 | 粪便 | 序列本身 |
| 主键 | 样本编号 | 样本编号 | 登录号 |
| 空间字段 | 经纬度、地上地下、材质 | 通常只有国家 | 无 |
| 时间字段 | 采集日期,两点设计 | 采集日期,多为单点 | 无 |
| 定量方式 | 相对丰度 | 相对丰度或 qPCR 校正 | 不适用 |
| 健康结局 | 无 | 常有疾病标签 | 无 |
| 环境协变量 | 气候、人口密度、海拔、近海 | 年龄、性别、BMI、饮食 | 无 |
§3 定位:城市建成环境,而不是人体宿主
3.1 一次生境的换轨
微生物组研究的默认生境是人。肠道、口腔、皮肤、阴道,四大部位各有自己的参考集、自己的疾病关联、自己的建库偏好。MetaSUB 把采样对象换成了「被人反复接触的固体表面」,这一步换轨带来三个连锁变化:采样单元从个体变成站点,解释变量从宿主表型变成城市属性,应用场景从临床变成公共卫生与城市设计。
这三个变化不是修辞。以解释变量为例,人体研究里最有解释力的是年龄、用药、饮食;在 MetaSUB 里,解释力最强的是城市本身(约 19% 的变异),其次是气候,再往后才是表面材质。也就是说,地理与气候对城市表面的菌群影响,大过这块表面是金属还是塑料。
| 维度 | 人体宿主微生物组 | MetaSUB 城市表面 |
|---|---|---|
| 采样单元 | 个体 | 站点与表面 |
| 主要变异来源 | 宿主表型与用药 | 城市与气候 |
| 参考框架 | 人体参考基因组去宿主 | 同样去人源,但人源占比本身是信号 |
| 时间结构 | 个体纵向随访 | 跨城横切,两点时间 |
| 应用出口 | 诊断、疗效、营养 | 监测、设计、生物安全 |
| 伦理重心 | 受试者隐私 | 站点位置敏感性 |
3.2 全球网格化采样意味着什么
「网格」在这里不是几何意义上的规则格网,而是「每个参与城市按同一套规则在自己城内布点」的松散网格。它的好处是把城市变成可比较的单位:每座城市贡献若干站点,每个站点贡献若干表面,表面类型被强制对齐到三类必采项。它的代价是网格密度不可控:一座城市可能只有一个站点,另一座可能有几十个。
把网格拆成城市、站点、表面、时间、分析五层看,前三层是对齐的(参与即入网格、三类表面必采、统一管线出结果),后两层不对齐:站点层每城数量不受控,时间层只有少数城市复采。这种「半结构化网格」正好适合做两件事:一是城市间的整体比较,因为表面类型被强制对齐;二是在控制城市后看表面效应,因为同一城市内表面类型齐全。它不适合做的是城市内部的精细制图,因为站点太稀疏。
3.3 核心类群的意义
论文报告了一个在 97% 以上样本中出现的核心类群集合,共 31 个类群,并指出这些类群与人体共生菌不同。这个结论的方法学含义大于生物学含义:它说明城市表面存在一套稳定的、跨气候跨文化的「基础设施菌群」,它们不随城市变化,说明其来源不是本地人群,而是表面材质、湿度、灰尘等共性条件。
对建模者来说,这 31 个类群是天然的稳定特征,适合用来做批次校正的锚点;对生态学解释来说,它们提示城市表面是一个被强烈选择过的生境,能在这里活下来的类群不多。
| 分层 | 出现率阈值 | 数量级 | 建模用途 |
|---|---|---|---|
| 核心 | 高于 97% | 数十 | 批次校正锚点、域不变特征 |
| 次核心 | 70%–97% | 上千 | 城市分层特征 |
| 边缘 | 低于 25% | 数千 | 城市特异信号,噪声也大 |
| 全部 | 全部样本 | 数千 | 发现新类群的底座 |
3.4 联盟结构决定了数据的形状
数据不是一次性采集的,而是由几十支地方队伍按统一手册分头采集。联盟的组织方式因此直接写进了数据:协议要先提交评审,通过后才寄试剂盒;城市负责人要接受培训,再往下传给采样队员;每月一次的电话会是主要协调机制。
| 角色 | 职责 | 对数据的影响 |
|---|---|---|
| 核心实验室 | 建库、测序、管线维护 | 决定技术批次 |
| 城市负责人 | 组织本地采样、填表 | 决定元数据质量 |
| 采样队员 | 现场擦拭、记录 | 决定样本可比性 |
| 分析工作组 | 注释、统计、可视化 | 决定结果口径 |
| 联盟协调组 | 协议评审、试剂盒寄送 | 决定时间对齐 |
§4 质量与特色
4.1 采样标准化做到了什么程度
标准化的核心不是「大家都用同样的拭子」这么简单,而是一整条链上的可核查:拭子型号限定在两种(Copan 与 Isohelix),运输管与保存液统一,DNA 提取用同一套试剂与流程,建库与测序参数统一,分析走同一条开源管线。每一环都有书面记录,任何一环出问题都能回溯到批次。
| 环节 | 统一措施 | 仍有差异 |
|---|---|---|
| 拭子 | 限定两种型号 | 两种型号的采集效率不同 |
| 运输 | 统一管与保存液 | 各地冷链条件不同 |
| 提取 | 统一试剂与温控 | 操作者手法 |
| 建库 | 统一建库策略 | 批次间效率波动 |
| 测序 | 统一读长与深度区间 | 上机批次与仪器状态 |
| 分析 | 统一 CAP 管线 | 管线版本迭代 |
4.2 测序与计算管线
每个样本 125 bp 双端、500 万至 700 万读段,这个深度对物种层面的组成分析足够,对低丰度类群和株级分析偏浅。管线 CAP 覆盖了从原始 FASTQ 到结果表的全流程:去接头、去低质量、去人源、比对、归类、丰度折算、耐药注释。管线是版本化开源的,这一点比结果本身更重要——它意味着任何人在任何时间都能用同一版本重跑出一致的结果。
| 管线环节 | 工具与参考 | 输出 | 影响下游的地方 |
|---|---|---|---|
| 去接头 | AdapterRemoval | 修剪后读段 | 影响有效读长 |
| 去人源 | 人参考比对 | 非人源读段 | 影响丰度分母 |
| 物种注释 | UniRef90、GTDB | 物种丰度 | 决定能识别到哪一层 |
| 耐药注释 | CARD、ResFinder | 基因家族丰度 | 决定耐药结论的粒度 |
| 序列发现 | 组装与比对 | 候选病毒与 CRISPR | 决定新发现的数量 |
4.3 质量控制与对照
这份数据在对照上做得比多数环境宏基因组研究更规矩:阳性对照用已知组成的标准品,阴性对照用提取缓冲液空白,另外还有台面擦拭的前后对照(清洁前与消毒后各一次)。这三类对照分别对应三种污染源——试剂污染、环境背景、操作台残留。
| 对照类型 | 构成 | 检出什么问题 | 处理方式 |
|---|---|---|---|
| 阳性对照 | 已知组成标准品 | 建库与测序的效率偏差 | 校正丰度偏差 |
| 阴性对照 | 提取缓冲液空白 | 试剂与耗材污染 | 扣除污染 taxa |
| 台面清洁前 | 消毒前擦拭 | 操作台背景 | 评估背景水平 |
| 台面清洁后 | 消毒后擦拭 | 消毒效果与残留 | 对比前后差异 |
4.4 案例:一台售票机的三份读数
以 2016 年 6 月 21 日某座大城市轨道交通站点的一台售票机为例,看一份样本能读出几层信息。这台售票机是金属外壳加塑料面板,位于地下站厅,城市六月的日均温在二十多度,人口密度属于该洲的高位。同一台机器在同一侧面板上采了三份拭子,分别对应面板上缘、按钮区、下缘。
第一层是组成。三份拭子的物种组成高度相似,说明同一块表面的菌群在几十厘米尺度上是均质的;差异主要出现在低丰度类群,属于采样随机性。第二层是功能。耐药基因的命中集中在两类常用的β-内酰胺相关家族,三份拭子的家族构成一致,但相对丰度差了一倍多,这个差异已经接近该城市的样本内变异水平。第三层是空间的。把这份样本放进全城样本里,它和同站点的长椅样本距离最近,和同城另一条线路的样本距离明显更远,说明站点效应强于城市效应。
这三层读数对应三种不同的下游用法。做组成的,可以用它做城市内的均质性检验;做功能的,要注意单份样本不足以支撑丰度比较;做空间的,可以把它当成「站点是比城市更细的分析单元」的一个证据。§4.4 的案例在后面的取数与边界讨论里会反复用到。
| 读法 | 观察 | 可信度 | 典型误用 |
|---|---|---|---|
| 组成 | 同一表面三份样本高度相似 | 高 | 据此认为全站均质 |
| 功能 | 耐药家族一致但丰度波动大 | 中 | 用单样本比较城市 |
| 空间 | 同站点样本比同城样本更近 | 中高 | 据此推断传播路径 |
4.5 已知的方法学边界
第一,深度限制。500 万至 700 万读段在物种层面够用,在株级和低丰度病毒层面不够,这也是为什么新发现的病毒多以候选序列形式给出。
第二,去人源的双刃性。去除人源读段是为了让微生物信号更干净,但人源占比本身携带信息(哪些表面更接近人体),去掉之后这部分信号就丢失了。
第三,相对丰度的组成性。所有丰度都是占比,一个类群上升必然伴随其他类群下降,任何差异分析都要用适合组成性数据的模型。
第四,批次。建库与上机分批进行,批次与城市部分混淆,做城市比较时必须把批次放进模型。第五,站点稀疏。多数城市站点少,城内制图不可行,只能做城市级比较。这五条边界里,前三条是技术性的、可以通过方法缓解;后两条是设计性的、只能靠承认来规避。
§5 取数:五个入口与三条路径
5.1 先认清入口的层级
这套数据没有一个统一的「下载按钮」。原始读段、分析结果表、元数据、候选序列、复现代码分散在五个地方,各管一段。取数时最容易犯的错是把某一个入口当成全集:门户上看到的样本数与 SRA 里的 run 数对不上,是常态。
| 入口 | 承载什么 | 形态 | 备注 |
|---|---|---|---|
| SRA 生物项目 | 原始 FASTQ | 按 run 组织 | 项目号 PRJNA732392 |
| ENA 镜像 | 同一批读段的欧洲镜像 | 按 run 组织 | 可检索到的 run 数少于论文样本数 |
| GeoSeeq 门户 | 论文分析结果表与样本元数据 | 网页表格与导出 | 原 pngb.io 链接现跳转至此 |
| GitHub 仓库 | CAP 管线与工具脚本 | 源码 | 版本化,可本地部署 |
| 论文补充材料 | 表 S1 等汇总表 | PDF 与表格附件 | 与门户口径可能不同 |
入口之间的关系可以这样理解:SRA 与 ENA 是「原料」,门户是「成品」,GitHub 是「菜谱」,补充材料是「成品的目录」。做组成分析用成品最快,做新方法必须回到原料。
5.2 从 SRA 或 ENA 取原始读段
最稳的做法是先拿到该项目的 run 清单,再按需下载。ENA 的 portal API 可以直接返回 run 级的文件大小,便于先做容量规划再决定下多少。
#-- 取该项目全部 run 的清单,含文件字节数
curl -s "https://www.ebi.ac.uk/ena/portal/api/search?result=read_run&query=study_accession%3D%22PRJNA732392%22&fields=run_accession,fastq_bytes,library_strategy,instrument_model&format=tsv&limit=0" -o metasub_runs.tsv
#-- 行数减一即 run 数
wc -l metasub_runs.tsv
#-- 按需下载单个 run 的双端文件(fastq_ftp 字段以分号分隔两条链接)
curl -s "https://www.ebi.ac.uk/ena/portal/api/filereport?accession=SRR28910725&result=read_run&fields=fastq_ftp&format=tsv"
下载之前先算总容量。整批读段按 TB 级预算,单机硬盘往往不够,实际做法是按城市或按表面类型分批拉取,处理完再删原始文件。
5.3 元数据表怎么读
门户导出的元数据是一张宽表,列数多、空值散落。读之前先做三件事:把表面类型归一、把日期转成标准格式、把城市名对齐到统一拼写。这三件事不做,后面的分层统计一定会出错。
sample_id city country site_name surface_type surface_material above_below date reads
<id_1> <city_a> <country_a> <station_1> handrail metal underground 2016-06-21 <reads_1>
<id_2> <city_a> <country_a> <station_1> bench wood underground 2016-06-21 <reads_2>
<id_3> <city_b> <country_b> <station_2> ticket_kiosk plastic above 2017-06-21 <reads_3>
表头是制表符分隔,读入后立刻检查三列:surface_type 的取值集合、date 的年份分布、reads 的分位数。这三列决定了后面所有分析能不能做。
5.4 用 CAP 复现一条样本
CAP 是官方管线,用 Nextflow 组织流程,输入是样本清单,输出是丰度表与注释表。复现单条样本的意义在于校验:如果你的结果与门户给的丰度在物种层面基本一致,说明参考库版本对得上。
#-- 拉取管线
git clone https://github.com/metasub/CAP.git
cd CAP
#-- 单样本试跑:输入为双端 FASTQ,参考库需事先下载
nextflow run main.nf \
--reads "sample_R{1,2}.fastq.gz" \
--outdir results_single \
--taxonomy_db uniref90 \
--threads 16
#-- 结果目录里的关键文件
ls results_single
管线跑通之后,把样本清单换成整批,就得到与论文同构的丰度矩阵。注意参考库版本:CAP 的参考库不随仓库一起分发,版本不同会导致物种名与丰度都变。
5.5 把结果表读进内存
丰度表通常是稀疏矩阵,行是类群,列是样本。读进来第一件事是转置成「样本 × 类群」,再做组成性处理,不要直接算欧氏距离或做 t 检验。
#-- 读入丰度矩阵并按样本归一
import pandas as pd
import numpy as np
prof = pd.read_csv("metasub_species.tsv", sep="\t", index_col=0)
X = prof.T #-- 行变成样本
X = X.div(X.sum(axis=1), axis=0) #-- 转成相对丰度
#-- 组成性数据先做中心对数比变换
eps = 1e-6
Xc = np.log(X + eps)
clr = Xc.sub(Xc.mean(axis=1), axis=0)
#-- 用核心类群做批次校正锚点
core = [c for c in clr.columns if (X[c] > 0).mean() > 0.97]
print(len(core), "core taxa")
这段代码的输出就是一组核心类群。§4.4 的案例里那份售票机样本,也包含在这组类群覆盖的范围内,可以作为校验用的参照点。
5.6 许可与引用边界
论文是 CC BY 4.0,可以转载图表与文字,需署名并标注改动。原始读段存在公共序列库,按库的通行规则使用,没有额外的访问审批。门户上的结果表可自由下载,但没有单独的数据许可声明,稳妥做法是同时引用论文与门户。CAP 源码的许可随仓库声明走,商用前要看一眼仓库里的许可文件,因为代码许可与数据许可不是一回事。
5.7 本地重建一张可查询的表
做多次分析时,把元数据与丰度表落到本地数据库比反复读 TSV 省事。样本表与丰度表分开存,用样本编号连接,索引建在 city 与 surface_type 上。
-- 建样本主表
CREATE TABLE samples (
sample_id TEXT PRIMARY KEY,
city TEXT NOT NULL,
country TEXT,
site_name TEXT,
surface_type TEXT,
surface_material TEXT,
above_below TEXT,
collected_on DATE,
read_count INTEGER
);
CREATE INDEX idx_city ON samples(city);
CREATE INDEX idx_surface ON samples(surface_type);
-- 按城市与表面统计样本量
SELECT city, surface_type, COUNT(*) AS n
FROM samples
GROUP BY city, surface_type
ORDER BY n DESC;
建完表先跑一遍样本量分布,你会立刻看到城市之间的不平衡。这个不平衡不是缺陷,是设计使然,但它必须进入后续每一个统计模型。
§6 与库内词条的关系
6.1 关系图谱
库内的微生物组词条几乎全部以人体为宿主,MetaSUB 是唯一以建成环境为采样单元的。两者在参考库层面有交集(都用 CARD 这类耐药库、都做去人源),在样本层面完全不重叠。
| 关系类型 | 库内词条 | 交集在哪 | 差异在哪 |
|---|---|---|---|
| 同生境不同层 | 无 | 无 | 库内没有第二个城市表面资源 |
| 参考库依赖 | CARD、SILVA | 注释与比对参考 | 一个供参考序列,一个供样本 |
| 方法学同源 | CAMI II | 都用宏基因组 profiling | 一个做基准,一个做真实图集 |
| 宿主对立 | UHGG、GMrepo、American Gut | 都做人源去除 | 一个以人为单元,一个以站点为单元 |
| 托管同源 | ENA | 同一套序列库基础设施 | 一个是总账,一个是项目 |
6.2 区隔表:它到底占哪个位置
这张表是整篇最该先看的一张。库内已有多个微生物组词条,如果不先把「谁管什么」说清,选型时一定会拿错。
| 库内词条 | 它的采样单元 | 与 MetaSUB 的重叠 | 什么时候该选它而不是 MetaSUB |
|---|---|---|---|
| UHGG 统一基因组集 | 人体肠道宏基因组组装出的基因组 | 无样本重叠,仅共享去人源流程 | 需要肠道菌参考基因组、做株级分类时 |
| SILVA 序列数据库 | rRNA 参考序列 | 无,MetaSUB 用鸟枪法不依赖它 | 做 16S 扩增子比对与分类时 |
| GMrepo v3 | 人体肠道宏基因组 run | 无,生境相反 | 要做疾病与肠道菌群关联时 |
| curatedMetagenomicData | 人体多部位宏基因组 | 无,但元数据组织方式可借鉴 | 要现成的统一元数据与 Bioconductor 接口时 |
| American Gut | 公民科学人体肠道 16S | 无,测序策略也不同 | 要做人群队列与饮食关联时 |
| CAMI II | 模拟与真实基准 | 都用 profiling 方法 | 要评价 binning 与 profiling 工具时 |
| CARD | 耐药基因参考库 | 是 MetaSUB 注释的上游 | 要查耐药基因家族定义与序列时 |
| AMRnet | 病原基因组耐药监测 | 概念相近,数据不同 | 要做临床病原的耐药基因组监测时 |
| dbCAN-HGM | 肠道菌 CAZyme 注释 | 无 | 要做碳水化合物活性酶分析时 |
| ENA | 序列总账 | 是 MetaSUB 的托管方 | 要跨项目检索原始读段时 |
一句话的区隔结论:库内所有微生物组词条都以「人」为宿主、以个体为采样单元;MetaSUB 以「城市建成环境表面」为采样单元、按全球城市网格布点、用鸟枪法横切城市抗性组——它是这套收藏里唯一的「非宿主」微生物组资源,也是唯一能支撑跨城市横向比较的一份。
这个位置带来的独占价值有两层。第一层是生境独占:想研究「城市表面的微生物生态」,库内没有替代品。第二层是设计独占:同一天、同一协议、同一条管线,这三点同时成立才能做跨城比较,而库内没有任何其他资源满足这三条。反过来说,只要你的人体研究需要一个「环境对照」,它就是现成的对照集。
6.3 检索路径
在站内找相关资源时,按「生境 → 采样单元 → 测序策略」三级筛,比按名称搜可靠。
| 你要找的 | 站内路径 | 判断依据 |
|---|---|---|
| 城市表面微生物 | 标签「微生物组」加关键词「建成环境」 | 采样单元是站点 |
| 人体肠道参考基因组 | 标签「微生物组」加「肠道」 | 采样单元是人 |
| 耐药基因参考 | 标签「药物与分子」加「耐药」 | 是注释库不是样本库 |
| 宏基因组基准 | 标签「医学问答与基准」加「宏基因组」 | 是评测集 |
| 原始读段托管 | 标签「基因组学与多组学」加「序列库」 | 是基础设施 |
按这三层筛完,通常会剩下两三个候选,再按月读它们的 §1.6(不适合谁)做最后判断。这个方法比看摘要快,也比看引用数准。
§7 质量评估与局限性
7.0 阅读本节前的一个前置校正
看质量评分之前,先校正一个默认假设:多数人会把「样本多、覆盖广、发在顶刊」直接换算成「数据质量高」。在这个数据集上,这个换算会带来系统性的误判,因为它的质量曲线不是单调的。
具体说,它在三个维度上确实达到同类资源的上限:采样协议的标准化程度、跨城市可比性、对照设置的完整度。它在另外三个维度上明显低于同体量的组学资源:时间分辨率、空间分辨率、临床相关性。前三个维度决定「能不能做横向比较」,后三个维度决定「能不能做纵向或因果分析」。一份数据在前三项满分、后三项不及格,是常态而不是缺陷——它是为一个特定问题设计的,评价必须回到那个问题。
所以下面的五维评分不看总分,只看哪一维是这套数据的设计目标、哪一维是被有意牺牲的。把被牺牲的维度当缺陷去挑,等于用尺子量温度。
7.1 五维评分
按千方医数集的五维口径逐项打分,每维满分 5 分,评分依据写在括号里。
规模维度 4 分:60 座城市、近五千份样本在环境宏基因组里属于第一梯队,但相对全球城市总数仍是极小抽样,且城市间不均衡。结构维度 4.5 分:元数据、丰度表、候选序列、管线四件套齐全,字段命名清晰,主键明确,扣分在表面类型存在自由文本残留。可比性 5 分:同一天、同协议、同管线三点同时成立,这是它最强的一维。可复现性 4.5 分:管线开源版本化,但参考库不随仓库分发,版本漂移需要自己控制。边界清晰度 4 分:论文明确写了季节缺口与相对丰度限制,扣分在没有官方的训练测试划分建议。
五维合计 22 分(满分 25)。这个分数在库内属于上游,但它的含义是「作为横向比较资源接近满分」,不是「作为通用微生物组资源接近满分」。
7.2 DAIMS 24 项评估
按 DAIMS 的 24 项数据资产质量条目逐条核对,结论分布是:通过 11 项、部分通过 8 项、不通过 5 项。
通过项集中在「可获取性」与「结构完整性」两组:数据可公开下载、主键唯一、字段有定义、版本可追溯、许可明确、样本与元数据可连接、对照样本齐备、原始读段与分析结果同源、管线可执行、文档有采样手册、引用信息完整。
部分通过项集中在「一致性」组:城市名拼写不统一、表面类型有自由文本、材质判断依赖现场主观、日期格式在门户与补充材料间不完全一致、仪器型号标注在门户与镜像之间不同、读段数阈值未在文档中固定、缺失值未统一编码、站点经纬度取的是站点中心而非采样点。
不通过项集中在「时效性」与「代表性」组:没有更新承诺、没有官方数据划分、样本地理分布严重不均、缺少空气与水基质、缺少任何健康结局字段。这五项恰好对应 §1.6 的四条边界,不是疏漏,是设计取舍。
用 DAIMS 的框架看,它是一份「交付质量高、适用范围窄」的资产。评估时把两组分开看,比看总分有用。
7.3 已知的、可枚举的偏差
第一,地理偏差。60 座城市里,欧美与东亚城市占比高,非洲、南亚、拉美的城市数量少,且这些城市的样本量普遍偏低。任何「全球」结论都要先看有没有被少数大城市场景主导。
第二,时间偏差。两个采样日都在 6 月,且都在北半球夏季,南半球城市此时是冬季。跨半球的季节对比因此不可做,除非用气候带而非日历月来分组。
第三,表面偏差。三类必采表面都是高频接触面,可选的窗面、地面、护栏比例低,导致「低接触表面」的样本代表性差。想研究接触强度与菌群的关系,会被这个采样设计卡住。
第四,技术与批次偏差。建库与测序分批进行,批次与城市部分混淆,尤其是参与较晚的城市。做城市比较时,批次必须进模型。
第五,组成性偏差。相对丰度的分母包含人源读段被去掉后的剩余部分,人源占比高的样本,其微生物相对丰度会被系统性放大。
第六,站点稀疏偏差。多数城市只有少量站点,城市内的空间变异无法估计,所有城市级均值都带着未知的空间抽样误差。
这些偏差不是「数据脏」,而是「设计的影子」。§4.4 的案例之所以值得反复看,就是因为它把三种偏差同时摆在了一份样本上:同表面三份样本的差异是抽样误差,耐药丰度的波动是组成性效应,站点间距离是空间稀疏。
7.4 外部验证矩阵
一份数据值不值得用,还要看别人用它做出了什么。下面按验证类型列出可查的外部证据。
| 验证类型 | 外部证据形态 | 验证了什么 | 强度 |
|---|---|---|---|
| 独立重分析 | 后续论文用同一批读段做新注释 | 读段本身可用 | 强 |
| 方法学引用 | 工具论文把它当真实数据测试集 | 结构可被通用工具读取 | 强 |
| 衍生资源 | 由它派生的病毒、噬菌体、CRISPR 目录 | 候选序列有再利用价值 | 中强 |
| 城市级复采 | 单城团队按同协议重采 | 协议可移植 | 中 |
| 教学与竞赛 | 被用作课程与挑战赛数据 | 门槛适中 | 中 |
| 政策引用 | 公共卫生报告引用其结论 | 结论有公共价值 | 弱到中 |
这张矩阵说明一件事:它的再利用主要发生在「序列层」而不是「表型层」。别人拿它去挖新病毒、新阵列、新物种,而不是拿它去做健康结局关联。这符合它的设计定位。
7.5 它为何能持续:一个不需要更新的图集
严格说,这份 2021 年的矩阵已经冻结,不会再变。但它背后的联盟还在运转:城市地图页一直列到 2024 年的采集点,联盟按月开会,新项目不断派生。它之所以能持续,不是因为数据在更新,而是因为它提供了一个可被反复引用的「基线坐标」——任何新城市、新季节、新基质的研究,都可以拿它当参照系来说明「我这份数据偏离基线多少」。
基线的价值不随时间衰减,反而随时间上升:越多的新数据出现,越需要一个固定的参照点。这是它和那些靠持续更新维持价值的数据库最根本的区别。
§8 生态位与历史
8.1 历史沿革
2015 年联盟成立,起点是一个很具体的怀疑:城市表面上的微生物,我们对它的了解远少于对肠道菌的了解。2016 年 6 月 21 日,第一次全球城市采样日,几十座城市在同一天用同一套方法采样。2017 年同日复采,形成跨年两点设计。2021 年,核心图集发表于 Cell,同时发布分析管线与结果门户。此后联盟继续以城市为单位扩展,并派生出多个子项目。
| 时间 | 事件 | 意义 |
|---|---|---|
| 2015 | 联盟成立 | 确立「城市表面」为研究对象 |
| 2015–2016 | 试点采样 | 打磨拭子与运输协议 |
| 2016-06-21 | 首个全球采样日 | 首次实现同日跨城采样 |
| 2017-06-21 | 第二个采样日 | 形成跨年比较能力 |
| 2021-06 | Cell 图集与管线发布 | 数据正式可复用 |
| 2021 之后 | 城市扩展与子项目派生 | 从图集转向持续监测 |
8.2 与相关计划的谱系
理解它的生态位,最好放在三条谱系的交叉点上:环境微生物组计划、城市生物安全监测、开放数据基础设施。
| 谱系 | 代表形态 | MetaSUB 的位置 | 差异 |
|---|---|---|---|
| 环境微生物组 | 全球土壤、海洋、室内微生物计划 | 城市建成环境这一支 | 采样单元是人工表面 |
| 生物安全监测 | 病原与耐药的环境监测 | 提供基线而非警报 | 不做实时监测 |
| 开放数据 | 公共序列库与分析门户 | 完全依赖公共库托管 | 不自建存储 |
8.3 下游衍生
由这份数据直接或间接派生的资源,大致分四类。了解这四类,能帮你判断「我想要的其实是不是某个衍生集」。
第一类是序列目录:候选病毒、候选细菌、CRISPR 阵列的整理目录,适合做发现型研究。第二类是工具与方法:注释流程、profiling 基准、可视化工具。第三类是城市级深化研究:单城团队按同协议加密采样,做城内制图。第四类是教学与竞赛数据:被拆成小样本用于课程与挑战赛。
这四类的共同点是「离开母集就不能单独解释」:序列目录需要回母集取样本上下文,工具需要母集的真实分布做验证,城市深化研究需要母集的基线做对比,教学子集需要母集的元数据来解释。所以看到衍生资源时,第一反应应该是「它对应母集的哪个子集」,而不是「它可以替代母集」。
8.4 生态位判断
在「微生物组数据」这个大类里,它的生态位可以一句话概括:横切面最宽、纵深最浅。横向它覆盖了六十座城市,纵向它只有两个时间点、一种基质、没有健康结局。这决定了它的最佳用法是「作为参照系」和「作为域外测试集」,而不是「作为某个人群或某座城市的主数据集」。
判断一个资源该不该选,往往不看它多强,而看它的强项是否正好是你问题里的关键约束。如果你的关键约束是「跨城市可比」,它几乎是唯一选择;如果你的关键约束是「个体层面的因果」,它一分不值。
§9 使用指引
9.1 三种角色的路径
做公共卫生监测的人、做方法学的人、做教学的人,进入这份数据的路径完全不同,混用会浪费时间。
公共卫生方向:先按城市筛出与本地气候带相近的城市,取门户的物种与耐药丰度表,做城市间的描述性对比,明确写出「相对丰度不等于风险」。不要试图从这里推发病率。
方法学方向:直接下原始读段,用 CAP 复现,把管线输出的丰度表当作你的 ground truth 中间层,再在上面试你的新方法。重点是固定参考库版本,否则你的改进会被版本差异淹没。
教学方向:抽十到二十个样本,配一份简化元数据,让学生做组成性分析与可视化。样本量小反而好,因为学生能在一次课内看到从原始表到结论的全过程。
9.2 一条最短的可用流程
从零到一张城市对比图,最短路径是四步:拿元数据、拿丰度表、连接、按城市聚合。
#-- 第一步:取 run 清单,确认可下载规模
curl -s "https://www.ebi.ac.uk/ena/portal/api/search?result=read_run&query=study_accession%3D%22PRJNA732392%22&fields=run_accession,fastq_bytes&format=tsv&limit=0" -o runs.tsv
#-- 第二步:从门户导出样本元数据与丰度表,放到同一目录
ls metasub_metadata.tsv metasub_species.tsv
#-- 第三步:核对连接键覆盖率(应接近 100%)
python3 -c "import pandas as pd; m=pd.read_csv('metasub_metadata.tsv',sep='\t'); p=pd.read_csv('metasub_species.tsv',sep='\t',index_col=0); print(len(set(m.sample_id)&set(p.columns)), len(m))"
#-- 第四步:按城市聚合后输出
python3 -c "import pandas as pd; m=pd.read_csv('metasub_metadata.tsv',sep='\t'); p=pd.read_csv('metasub_species.tsv',sep='\t',index_col=0); x=p.T.join(m.set_index('sample_id')); print(x.groupby('city').mean().shape)"
四步跑完,你会拿到一个城市 × 类群的均值矩阵。注意最后一步用的是算术平均,只适合做粗看;正式分析要用组成性方法,见 §5.5。
9.3 引用方式
引用要分两层:数据本身引论文,具体文件引项目号。只引门户链接是不够的,因为门户地址变过——原来的入口现在跳转到新域名,链接会失效。
@article{danko2021metasub,
title = {A global metagenomic map of urban microbiomes and antimicrobial resistance},
author = {Danko, David and Bezdan, Daniela and Afshin, Evan E. and others},
journal = {Cell},
volume = {184},
number = {13},
pages = {3376--3393.e17},
year = {2021},
doi = {10.1016/j.cell.2021.05.002}
}
数据可用性声明建议写成:「原始读段取自 NCBI SRA 项目 PRJNA732392,分析结果表取自 MetaSUB 联盟公共门户,复现使用 MetaSUB CAP 管线。」这样三层都可追溯。
9.4 三类任务的取舍
做城市基线对比,起点是门户丰度表,关键是按气候带分组,最容易踩的坑是直接比均值而忽略样本量差异。做新病毒发现,起点是原始读段,关键是组装后做完整性过滤,最容易踩的坑是把碎片当候选直接上报。做方法基准测试,起点也是原始读段,关键是固定参考库版本,最容易踩的坑是版本漂移导致结论反转。
三类任务的共同前提是一样的:先把「我要用它回答的问题」写成一句话,再看这句话里的采样单元是「城市」还是「样本」。如果写成了「个体」,就该停下来换资源。
§10 AI 使用声明
| 项目 | 说明 |
|---|---|
| 数据来源 | 论文、官方站点、公共序列库、分析门户 |
| 核实时间 | 2026-10-29 |
| 数字口径 | 规模数字以 Cell 2021 论文为准,官网首页未列样本数 |
| 未核实项 | 联盟当前城市总数、2021 年后新增样本量 |
| 生成方式 | 人工核实事实后由 AI 辅助组织文本 |
| 适用建议 | 可用于选型与取数规划,不可替代原始文献 |
| 引用要求 | 引用本页时请同时引用原始论文 |
| 更新策略 | 无固定周期,重大口径变化时修订 |
常见误读
| 常见说法 | 实际 | 证据 |
|---|---|---|
| 这是人体微生物组数据 | 采样单元是站点与表面,不含个体 | 论文方法学写的是表面拭子 |
| 覆盖了全球所有大城市 | 60 座城市,且分布不均 | 论文表 1 与样本量分布 |
| 有逐月采样,可做季节分析 | 只有两个 6 月采样日 | 论文把季节变化列为未解决问题 |
| 样本数就是门户显示的数目 | 论文与门户口径不同 | 论文口径比门户口径多一百三十余份 |
| 耐药基因多就代表耐药风险高 | 只有相对丰度,没有载量 | 论文未做绝对定量 |
| 空气和水也采了 | 只有表面拭子一种基质 | 方法学只描述表面采样 |
| 数据在 Qiita 上 | 现行主入口是门户与 SRA | 按旧研究编号访问会跳回首页 |
| 数据会持续更新 | 图集已冻结,联盟仍在采样 | 门户项目为固定快照 |
| 可以直接拿来做临床预测 | 无任何健康结局字段 | 字段字典里没有临床列 |
| 16S 和宏基因组混在一起 | 核心矩阵全为鸟枪法 | 读长与深度参数统一 |
FAQ
Q1:MetaSUB 到底有多少样本和多少城市?
Cell 2021 论文的口径是四千七百余份样本、60 座城市、跨 3 年。GeoSeeq 门户上的公共项目显示 4,597 份样本,ENA 镜像可检索到 1,898 个 run。三个数字并存,差额构成官方未说明,引用时按论文口径,取数时按门户口径。
Q2:它是 16S 扩增子还是宏基因组?
核心图集全部是鸟枪宏基因组,125 bp 双端,每样本 500 万至 700 万读段。联盟早期个别城市做过 16S 预实验,但不进入这个矩阵。这意味着它不需要引物,也不受 16S 的拷贝数偏差影响,代价是深度对低丰度类群不够。
Q3:有没有每月重复采样?
没有。采样集中在 2015–2016 试点与 2016、2017 两个 6 月 21 日的全球城市采样日。论文自己把季节变化列为未解决问题,并指出多数样本来自这两个采样日。想做时间序列,只能另找城市级子项目。
Q4:数据从哪里下载?
原始读段在 SRA 的 PRJNA732392,ENA 有镜像;分析结果表与元数据在 GeoSeeq 的 MetaSUB Consortium 公共项目;复现管线是 GitHub 上的 CAP。三处各管一段,没有统一的打包下载。
Q5:为什么门户的样本数和论文对不上?
论文写的是采集并测序的样本总数,门户列的是进入分析并公开的样本数,两者之间可能隔着一批未通过质控的样本。这是常见现象,不必理解为错误,但做样本量规划时要用较小的那个数。
Q6:能做绝对定量吗?
不能。所有丰度都是相对丰度,没有内标、没有 qPCR 校正、没有表面积标准化。想做载量估计,需要在采样阶段就加入已知量的内标,这份数据没有。
Q7:城市之间的差异主要来自什么?
按论文的变异分解,城市本身的解释力最强,其次是气候,再往后是表面材质与地理距离。也就是说,地理与气候的影响大过「这块表面是金属还是塑料」。
Q8:31 个核心类群是什么?
是在 97% 以上样本中出现的类群集合,论文指出它们与人体共生菌不同。方法学上它们适合做批次校正的锚点,因为跨城市稳定;生物学上它们提示城市表面存在一套被强烈选择过的「基础设施菌群」。
Q9:可以拿它训练模型吗?
可以,但要先划分。它没有官方训练测试划分,自己划的时候必须按城市分组,不能按样本随机划,否则同一城市的样本会同时出现在训练与测试里,指标会虚高。
Q10:它和 American Gut 能拼起来用吗?
技术上可以拼表,但生境不同、测序策略不同、定量基准不同,拼出来的模型学到的是「生境差异」而不是「生物学信号」。更合理的用法是把它当域外测试集,而不是训练集的一部分。
Q11:许可允许商用吗?
论文是 CC BY 4.0,署名即可商用。原始读段在公共库,按库的条款使用。门户结果表没有单独许可声明,商用前建议取得书面确认,或只使用论文补充材料里的汇总表。
Q12:如果只做一件事,应该做什么?
用它做参照系。无论你研究的是哪座城市、哪个季节、哪种表面,都可以拿这份基线来说明你的数据偏离多少。这是它最难被替代的用法。
术语表
| 术语 | 含义 |
|---|---|
| 建成环境 | 人造的、被人长期使用的物理空间,如车站、通道、站厅 |
| 表面拭子 | 用拭子擦拭固体表面以收集微生物的采样方式 |
| 鸟枪宏基因组 | 不经过扩增、直接对样本全部 DNA 测序的策略 |
| 相对丰度 | 某类群读段占全部读段的比例,不等于绝对数量 |
| 组成性数据 | 各分量之和恒定的数据,此消彼长 |
| 中心对数比 | 处理组成性数据的常用变换,把比例映射到实数空间 |
| 核心类群 | 在高比例样本中出现、跨城市稳定的类群集合 |
| 耐药基因组 | 样本中全部耐药基因的集合 |
| 抗微生物耐药 | 微生物对药物不敏感的现象,缩写 AMR |
| 全球城市采样日 | 各参与城市在同一天按同一协议采样的机制 |
| 去人源 | 比对并剔除人基因组读段的处理步骤 |
| 批次效应 | 由建库或上机批次引入的系统性偏差 |
| 变异分解 | 把总变异按协变量拆分的统计方法 |
| 域外测试 | 用与训练集分布不同的数据检验模型泛化 |
| 候选序列 | 由组装与比对发现、尚未培养验证的序列 |
| CRISPR 阵列 | 成簇规律间隔短回文重复序列的阵列结构 |
| 站点效应 | 同一城市内不同站点之间大于城市间的差异 |
| 气候分类 | 按温度与降水划分气候区的体系 |
| 阳性对照 | 已知组成的标准品,用于检验流程效率 |
| 阴性对照 | 不含目标物的空白,用于检出污染 |
| 采样深度 | 单个样本得到的读段总数 |
| 稀疏矩阵 | 大部分取值为零的矩阵,适合存丰度表 |
| 数据冻结 | 数据集在某一版本后不再变动 |
| 参照系 | 用于衡量新数据偏离程度的固定基线 |
附录 A:核心数字核对表
| 项 | 值 | 来源 |
|---|---|---|
| 样本数 | 四千七百二十八 | Cell 2021 论文摘要 |
| 城市数 | 60 | Cell 2021 论文摘要 |
| 时间跨度 | 3 年 | Cell 2021 论文摘要 |
| 已知物种数 | 4,246 | Cell 2021 论文结果 |
| 核心类群 | 31 个(出现率高于 97%) | Cell 2021 论文结果 |
| 次核心类群 | 1,145 个(70%–97%) | Cell 2021 论文结果 |
| 边缘类群 | 2,466 个(低于 25%) | Cell 2021 论文结果 |
| 全部类群 | 4,424 个 | Cell 2021 论文结果 |
| 新发现病毒 | 10,928 个 | Cell 2021 论文摘要 |
| 新发现细菌 | 1,302 个 | Cell 2021 论文摘要 |
| 新发现古菌 | 2 个 | Cell 2021 论文摘要 |
| 新发现 CRISPR 阵列 | 838,532 个 | Cell 2021 论文摘要 |
| 每样本读段 | 500 万–700 万 | Cell 2021 论文方法 |
| 读长 | 125 bp 双端 | Cell 2021 论文方法 |
| 门户口径样本数 | 4,597 | GeoSeeq 公共项目页 |
| 镜像 run 数 | 1,898 | ENA portal API 查询 |
| 城市变异解释力 | 约 19% | Cell 2021 论文结果 |
附录 B:数字的来源分层
三级标注,方便判断哪些数字可以直接写进论文方法学。
| 层级 | 含义 | 本页涉及的项 |
|---|---|---|
| 官方页面 | 机构站点或门户直接写明,可直接引用 | 联盟成立年份、子项目清单、门户口径样本数、镜像 run 数 |
| 论文摘要与正文 | 同行评议文献,引用需带卷页与 DOI | 样本数、城市数、物种数、核心类群、读段参数、变异解释力 |
| 未核实 | 站点未给、文献未写,或口径冲突未解 | 联盟当前城市总数、2021 年后新增样本量、门户与论文差额的构成 |
附录 C:完整参考文献
- Danko D, Bezdan D, Afshin EE, et al. A global metagenomic map of urban microbiomes and antimicrobial resistance. Cell. 2021;184(13):3376–3393.e17. doi:10.1016/j.cell.2021.05.002
- MetaSUB Consortium 官方站点。http://metasub.org/(2026-10-29 访问)
- NCBI SRA 生物项目 PRJNA732392。https://www.ncbi.nlm.nih.gov/bioproject/PRJNA732392
- ENA portal API,read_run 记录查询(2026-10-29)
- GeoSeeq 公共项目页,MetaSUB Consortium / Cell Paper(2026-10-29 访问)
- MetaSUB Core Analysis Pipeline 源码仓库。https://github.com/metasub/CAP
- MetaSUB 联盟工具集。https://github.com/metasub/metasub_utils
附录 D:最小可运行示例
把附录 A 的核对表变成可执行的检查,用来在拿到数据后第一时间确认口径。
#-- 口径自检:三个数字是否与文献一致
expected = {
"paper_samples": 4728,
"portal_samples": 4597,
"ena_runs": 1898,
}
#-- 读入本地统计结果(由前面的 shell 步骤生成)
import pandas as pd
meta = pd.read_csv("metasub_metadata.tsv", sep="\t")
local = {
"paper_samples": len(meta),
"portal_samples": len(meta),
"ena_runs": len(meta),
}
for k, v in expected.items():
got = local[k]
flag = "ok" if got == v else "diff"
print(f"{k}: expected={v} local={got} {flag}")
这三个数字本该一致而实际不一致,是这份数据的常态。自检脚本的作用不是判断谁对谁错,而是让你在写方法学时知道自己在用哪个口径。
附录 E:如果只记五件事
- 采样单元是地铁与公交系统的表面,不是人;这是它与库内所有微生物组词条的根本分野。
- 规模是 60 座城市、近五千份样本、两个 6 月采样日,全部鸟枪宏基因组。
- 最强的一维是跨城可比性,最弱的一维是时间分辨率与临床相关性。
- 取数走 SRA 与门户两条路,复现走 CAP,不要指望一个统一打包下载。
- 它的长期价值在于当参照系,而不是当主数据集。
编辑说明
本页由千方医数集编辑部组织撰写,事实核实时间为 2026-10-29。核实方式为直接访问官方站点、查询公共序列库接口、读取论文全文的摘要与方法学部分。核实过程中确认了两点:官方站点首页未标注样本数与城市数,因此规模数字一律以 Cell 2021 论文为准;分析门户的原域名已跳转至新平台,本页给出的链接为跳转后的地址。凡口径冲突处(论文样本数与门户口径、镜像 run 数与样本数)本页只并列陈述,不作裁定,差额构成标为未核实。本页不含任何需要下载全量数据才能得到的分布统计,凡涉及分布的说法均以论文已发表的结论为限。若后续出现新的官方口径,修订时优先更新附录 A 与附录 B 两级来源标注。
相关数据集导航
以下为站内 AI-Ready 数据集百科中与本词条共享多个主题标签的相关数据集,按相关度降序排列:
- gmrepo-v3 — 共享标签:基因组学与多组学 / 微生物组 / 测序数据 / 公共卫生与流行病学
- hmp — 共享标签:基因组学与多组学 / 微生物组 / 测序数据
- mgnify — 共享标签:基因组学与多组学 / 微生物组 / 测序数据
- curatedmetagenomicdata — 共享标签:基因组学与多组学 / 微生物组 / 测序数据
- sra — 共享标签:基因组学与多组学 / 测序数据 / 公共卫生与流行病学
- metalog — 共享标签:基因组学与多组学 / 微生物组 / 公共卫生与流行病学
- gisaid-epiflu — 共享标签:基因组学与多组学 / 测序数据 / 公共卫生与流行病学
- qiita — 共享标签:基因组学与多组学 / 微生物组 / 测序数据
- bv-brc — 共享标签:基因组学与多组学 / 微生物组 / 公共卫生与流行病学
- ena — 共享标签:基因组学与多组学 / 微生物组 / 公共卫生与流行病学
导航说明:本章节由全站统一标签体系自动计算生成(标签重合度算法),双向可达;点击链接可跳转至对应数据集词条。

