跳转到主要内容

常见RNA-seq标准化方法

项目描述

Build Status Code Style Black Documentation Status Version on PyPI Supported Python versions Number of downloads from PyPI

Python实现的常见RNA-seq标准化方法

  • CPM(每百万计数)

  • FPKM(每千碱基百万个片段)

  • TPM(每百万转录本)

  • UQ(上四分位数)

  • CUF(使用UQ因子的计数调整)

  • TMM(M值的修剪平均值)

  • CTF(使用TMM因子的计数调整)

有关方法的详细描述,请参阅文档

功能

  • 纯Python实现(无需R等)

  • 兼容Scikit-learn

  • 命令行界面

  • 详细的文档

  • 验证的方法实现

安装

我们建议使用pip安装RNAnorm

pip install rnanorm

快速开始

实现的方法可以从Python或命令行执行。

从Python进行归一化

最常见的情况是从Python运行归一化

>>> from rnanorm.datasets import load_toy_data
>>> from rnanorm import FPKM
>>> dataset = load_toy_data()
>>> # Expressions need to have genes in columns and samples in rows
>>> dataset.exp
          Gene_1  Gene_2  Gene_3  Gene_4  Gene_5
Sample_1     200     300     500    2000    7000
Sample_2     400     600    1000    4000   14000
Sample_3     200     300     500    2000   17000
Sample_4     200     300     500    2000    2000
>>> fpkm = FPKM(dataset.gtf_path).set_output(transform="pandas")
>>> fpkm.fit_transform(dataset.exp)
             Gene_1    Gene_2    Gene_3    Gene_4    Gene_5
Sample_1   100000.0  100000.0  100000.0  200000.0  700000.0
Sample_2   100000.0  100000.0  100000.0  200000.0  700000.0
Sample_3    50000.0   50000.0   50000.0  100000.0  850000.0
Sample_4   200000.0  200000.0  200000.0  400000.0  400000.0

从命令行进行归一化

也支持从命令行进行归一化。要列出可用方法和一般帮助

rnanorm --help

获取特定方法的信息,例如CPM

rnanorm cpm --help

要使用CPM进行归一化

rnanorm cpm exp.csv --out exp_cpm.csv

文件exp.csv需要逗号分隔的文件,其中基因位于列中,样本位于行中。值应该是原始计数。输出保存到exp_cpm.csv。输入文件示例

cat exp.csv
,Gene_1,Gene_2,Gene_3,Gene_4,Gene_5
Sample_1,200,300,500,2000,7000
Sample_2,400,600,1000,4000,14000
Sample_3,200,300,500,2000,17000
Sample_4,200,300,500,2000,2000

也可以通过标准输入提供输入

cat exp.csv | rnanorm cpm --out exp_cpm.csv

如果使用--out指定的文件已经存在,则命令将失败。如果您确定要覆盖,请使用--force标志

cat exp.csv | rnanorm cpm --force --out exp_cpm.csv

如果没有指定--out参数的文件,则输出将打印到标准输出

cat exp.csv | rnanorm cpm > exp_cpm.csv

TPM和FPKM方法需要基因长度。这些可以通过GTF文件或“基因长度”文件提供。后者是两列文件。第一列应包括exp.csv的标题中的基因,第二列应包含由并集外显子模型计算的基因长度

# Use GTF file
rnanorm tpm exp.csv --gtf annotations.gtf > exp_out.csv
# Use gene lengths file
rnanorm tpm exp.csv --gene-lengths lenghts.csv > exp_out.csv
# Example of gene lengths file
cat lenghts.csv
gene_id,gene_length
Gene_1,200
Gene_2,300
Gene_3,500
Gene_4,1000
Gene_5,1000

贡献

要了解如何为代码库做出贡献,请阅读贡献部分。

引用

如果您在研究中使用RNAnorm,请按此页侧面板中“引用此存储库”部分建议的方式引用。

项目详情


下载文件

下载适用于您的平台文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源分布

rnanorm-2.1.0.tar.gz (138.0 kB 查看散列

上传时间

构建分布

rnanorm-2.1.0-py3-none-any.whl (124.5 kB 查看哈希值)

上传时间 Python 3

支持者

AWSAWS云计算和安全赞助商DatadogDatadog监控FastlyFastlyCDNGoogleGoogle下载分析MicrosoftMicrosoftPSF赞助商PingdomPingdom监控SentrySentry错误日志StatusPageStatusPage状态页面