scDIOR 是一个用于在 R 与 Python 之间进行单细胞数据转换的工具。这个工具主要由两个部分组成:一个是 R 的包 dior,另一个是 Python 的库 diopy。
1. 创建 Conda 环境并安装
首先,我们需要在 Conda 中创建一个新的环境,并在其中安装 dior 和 diopy。以下是创建环境并进行安装的步骤:
conda create -n conda_env python=3.8 R=4.0
接着,我们在 R 中安装 dior:
install.packages('devtools')
devtools::install_github('JiekaiLab/dior')
# 或者使用 devtools::install_github('JiekaiLab/dior@HEAD')
然后在 Python 中安装 diopy:
pip install diopy
2. 从 R 到 Python 的单细胞数据转换
用户可以使用 R 的 Monocle3 进行轨迹分析,然后使用 scDIOR 将单细胞数据转换为 Python 的 Scanpy,例如剪接和未剪接的表达谱,以及单细胞布局。表达谱可以用于进行动态 RNA 速度分析,结果可以在 Monocle3 的布局上进行投影。
以下是在 R 中写入数据,然后在 Python 中读取数据的代码:
# 在 R 中
dior::write_h5(data, file='scdata.h5', object.type = 'singlecellexperiment')
# 在 Python 中
adata = diopy.input.read_h5(file = 'scdata.h5')
3. 从 Python 到 R 的单细胞数据转换
用户可以使用 Scanpy 提供的单细胞数据处理和标准化方法,并使用 Seurat 提供的批次校正方法。
以下是在 Python 中写入数据,然后在 R 中读取数据的代码:
# 在 Python 中
diopy.output.write_h5(data_py, file = 'scdata.h5')
# 在 R 中
adata = dior::read_h5(file='scdata.h5', target.object = 'seurat')
4. 空间组学数据的数据输入输出
scDIOR 支持在 R 和 Python 平台之间进行空间组学数据的输入输出。
以下是在 R 中写入数据,然后在 Python 中读取数据的代码:
# 在 R 中
dior::write_h5(data, file='scdata.h5', object.type = 'singlecellexperiment')
# 在 Python 中
adata = diopy.input.read_h5(file = 'scdata.h5')
image.png
image.png