真实 Perturb-seq / CROP-seq 数据加载工具
PerturbSeqIO
00 Remarks
GEARS 在有实测扰动数据时应当优先使用实测标签训练。这里提供两种文件的读取:
- 扰动表达矩阵(宽表 CSV):行为基因、列为扰动样本,
列名即被扰动基因的组合,多个基因用 + 连接,例如 codY、codY+luxR; 列名可选带模式后缀,例如 codY_Knockout、codY+luxR_Knockdown。
- control 表达谱(两列 CSV/TSV):列为
gene,expression,
给出野生型(未扰动)基线表达。
01 Syntax
SMRUCC.genomics.Analysis.GEARS.IO.PerturbSeqIO
02 Methods
| Name | Overloads | Summary |
|---|---|---|
| LoadControlProfile | 1 | 读取 control 表达谱 |
| LoadPerturbSeq | 1 | 读取真实 Perturb-seq 宽表矩阵并转换为训练样本集合 |
| SplitLine | 1 | 按分隔符切分一行文本 |
| ParseMode | 1 | 从列名中解析干预模式后缀 |
03 Fields
| Name | Overloads | Summary |
|---|---|---|
| delimiters | 1 | CSV/TSV 支持的分隔符 |
04 Members
LoadControlProfile(
String, String())读取 control 表达谱
Parameters
| Name | Type | Description |
|---|---|---|
path | String | 两列文件(gene, expression)路径,首行可为表头 |
geneNames | String() | 表达矩阵的基因名列表,决定输出向量的顺序 |
Returns
control 表达向量 [numGenes];文件中缺失的基因回退为 0
读取真实 Perturb-seq 宽表矩阵并转换为训练样本集合
Parameters
| Name | Type | Description |
|---|---|---|
matrixFile | String | 扰动表达矩阵 CSV;行为基因、列为扰动样本,列名形如 |
controlExpression | Double() | control 基线表达向量 [numGenes] |
graph | GeneRegulatoryGraph | 基因调控图,用于把基因名映射为节点索引 |
defaultMode | InterventionMode | 列名未指定干预模式时使用的默认模式 |
combinationSeparator | String | 组合扰动列名中的基因分隔符,默认为 |
Returns
训练样本列表
SplitLine(
String)按分隔符切分一行文本
Parameters
| Name | Type | Description |
|---|---|---|
line | String | 原始文本行 |
Returns
切分后的字段数组
ParseMode(
String, InterventionMode)从列名中解析干预模式后缀
Remarks
对外可见:GEARS.SetTrainingSamples 的矩阵重载在样本的 SampleInfo.metadata 里没有记录干预模式时,会用它按列名回退解析。
Parameters
| Name | Type | Description |
|---|---|---|
columnName | String | 列名,例如 |
mode | InterventionMode | 解析得到的干预模式;未指定时保持调用方传入的默认值 |
Returns
去掉模式后缀之后的基因名部分
delimiters
CSV/TSV 支持的分隔符