[ PROMPT_NODE_26590 ]
Flowio API 参考
[ SKILL_DOCUMENTATION ]
# FlowIO API 参考
## 概述
FlowIO 是一个用于读取和写入流式细胞术标准 (FCS) 文件的 Python 库。它支持 FCS 2.0、3.0 和 3.1 版本,且依赖极少。
## 安装
bash
pip install flowio
支持 Python 3.9 及更高版本。
## 核心类
### FlowData
处理 FCS 文件的主要类。
#### 构造函数
python
FlowData(fcs_file,
ignore_offset_error=False,
ignore_offset_discrepancy=False,
use_header_offsets=False,
only_text=False,
nextdata_offset=None,
null_channel_list=None)
**参数:**
- `fcs_file`: 文件路径 (str)、Path 对象或文件句柄
- `ignore_offset_error` (bool): 忽略偏移错误(默认: False)
- `ignore_offset_discrepancy` (bool): 忽略 HEADER 和 TEXT 部分之间的偏移差异(默认: False)
- `use_header_offsets` (bool): 使用 HEADER 部分偏移量而非 TEXT 部分(默认: False)
- `only_text` (bool): 仅解析 TEXT 段,跳过 DATA 和 ANALYSIS(默认: False)
- `nextdata_offset` (int): 读取多数据集文件的字节偏移量
- `null_channel_list` (list): 需要排除的空通道 PnN 标签列表
#### 属性
**文件信息:**
- `name`: FCS 文件名
- `file_size`: 文件大小(字节)
- `version`: FCS 版本 (例如 '3.0', '3.1')
- `header`: 包含 HEADER 段信息的字典
- `data_type`: 数据格式类型 ('I', 'F', 'D', 'A')
**通道信息:**
- `channel_count`: 数据集中的通道数
- `channels`: 通道编号到通道信息的映射字典
- `pnn_labels`: PnN(短通道名称)标签列表
- `pns_labels`: PnS(描述性染色名称)标签列表
- `pnr_values`: 每个通道的 PnR(范围)值列表
- `fluoro_indices`: 荧光通道索引列表
- `scatter_indices`: 散射光通道索引列表
- `time_index`: 时间通道索引(或 None)
- `null_channels`: 空通道索引列表
**事件数据:**
- `event_count`: 数据集中的事件数(行数)
- `events`: 原始事件数据(字节)
**元数据:**
- `text`: TEXT 段键值对字典
- `analysis`: ANALYSIS 段键值对字典(如果存在)
#### 方法
##### as_array()
python
as_array(preprocess=True)
返回 2D NumPy 数组格式的事件数据。
**参数:**
- `preprocess` (bool): 应用增益、对数和时间缩放转换(默认: Tr