美文网首页
创建大鼠cistarget参考数据库

创建大鼠cistarget参考数据库

作者: sglwc | 来源:发表于2023-10-12 11:07 被阅读0次

运行SCENIC做单细胞的转录因子分析时遇到一个问题,就是运行SCENIC所需的输入文件中需要用到cistarget database的参考motif文件,而这个在SCENIC官网上仅有人、小鼠、果蝇的参考数据库,而自己的数据是大鼠的基因组,因此需要自己动手去建大鼠的cistarget database。
SCENIC官网中提供了create cistarget database的workflow,但官网中该部分的文档写的并不十分详细,在此特别感谢另外一位做拟南芥的简友,提供了很好的借鉴,附上参考资料:
https://github.com/aertslab/create_cisTarget_databases
https://www.jianshu.com/p/59db26de0858
https://github.com/weng-lab/cluster-buster

第一步:安装各种软件

创建环境

conda create -n create_cistarget_databases \
    'python=3.10' \
    'numpy=1.21' \
    'pandas>=1.4.1' \
    'pyarrow>=7.0.0' \
    'numba>=0.55.1' \
    'python-flatbuffers'

conda activate create_cistarget_databases

将create_cisTarget_databases软件包拷贝到本地

git clone https://github.com/aertslab/create_cisTarget_databases

安装Cluster-Buster

##安装预编译二进制文件
cd "${CONDA_PREFIX}/bin" #进入环境根目录下的bin文件夹
wget https://resources.aertslab.org/cistarget/programs/cbust #下载预编译二进制文件
chmod a+x cbust #使该文件变为可执行文件

##安装cbust
git clone -b change_f4_output https://github.com/ghuls/cluster-buster/
cd cluster-buster
make cbust
conda activate create_cistarget_databases
cp -a cbust "${CONDA_PREFIX}/bin/cbust"

安装UCSC工具

cd "${CONDA_PREFIX}/bin"
wget http://hgdownload.soe.ucsc.edu/admin/exe/linux.x86_64/liftOver
wget http://hgdownload.soe.ucsc.edu/admin/exe/linux.x86_64/bigWigAverageOverBed
chmod a+x liftOver bigWigAverageOverBed
conda activate create_cistarget_databases

第二步:创建Cistarget数据库

根据create_cistarget_database的官方文档,需要输入以下文件


image.png

所需文件

1、FASTA file with regulatory regions: 所有基因的启动子区域序列,可以在UCSC中下载https://hgdownload.soe.ucsc.edu/goldenPath/rn7/bigZips/
2、motifs矩阵文件:in Cluster-Buster format

从cisBP(http://cisbp.ccbr.utoronto.ca/)中下载大鼠基因的motif信息,主要关注PWM文件夹。

image.png PWM文件夹由许多motif的txt文件组成,点开其中一个motif的txt文件可以看到其中包含了motif的概率矩阵信息。在这个矩阵中,每一行代表一个碱基位置,每一列代表一个碱基类型,数字表示该位置上对应碱基类型的频次或权重。 image.png

需要注意的是,PWM文件夹中的motif矩阵文件需要修饰为Cluster-Buster中的motif矩阵格式!

image.png
cd ./pwms_all_motifs

#Step 1: 去掉文件夹中所有txt文件的第一行和第一列的信息
for file in *.txt; do
    awk 'NR>1 { for (i=2; i<=NF; i++) printf $i"\t"; printf "\n" }' "$file" > "${file}_temp"
    mv "${file}_temp" "$file"
done

#Step 2: 过滤掉文件夹中的空白文件
find ./ -type f -empty -delete

#Step 3: 提取文件夹中的文件名作为motif_id,并在相应的txt文件的第一行添加motif_id的信息
for file in *.txt; do
    motif_id=$(basename "$file" .txt)
    sed -i "1s/^/$motif_id\n/" "$file"
done

#Step 4: 在所有文档的开头加上“>”符号
sed -i '1s/^/>/' *.txt

#Step 5: 将所有文件的后缀名改为.cb文件
for file in *.txt; do
    mv "$file" "${file%.txt}.cb"
done
得到了以下结果: image.png
3、motif list:其实就是把PWM文件夹中所有文件的文件名提取出来形成一个txt文件就行
for file in pwms_all_motifs/*.cb; do
    echo "$(basename "$file" .cb)" >> motif_list.txt
done

运行create_cisTarget_motif_databases.py

cd /home/lwc/scRNA/SCENIC/create_cisTarget_databases
ln -s ~/scRNA/SCENIC/Rattus_cistarget_database/upstream2000.fa
ln -s ~/scRNA/SCENIC/Rattus_cistarget_database/pwms_all_motifs/
ln -s ~/scRNA/SCENIC/Rattus_cistarget_database/motif_list.txt

python create_cistarget_motif_databases.py \
   -f upstream2000.fa \
   -M pwms_all_motifs/ \
   -m motif_list.txt \
   -o ~/scRNA/SCENIC/Rattus_cistarget_database/ \
   -t 22
运行界面如下 image.png

总结

  1. 第一步安装软件按照create_cistarget_database的官方文档来就好了
  2. 第二步比较坑的一点是官方文档中只说了需要Cluster-Buster格式的motif文件,但是并没有详细说明,另外就是还缺少说明motif list需要的是什么信息。
  3. 想要创建cistarget database,最关键的是要拿到对应种属的motif PWM文件,然后将这个motif的矩阵文件进行修饰改为Cluster-Buster的格式。
  4. 本文选取的是收录motif信息最多的cisbp数据库,当然还有其他数据库可以下载这个motif PWM文件,但是至于怎么把它们整合起来那是另一回事了。

相关文章

  • manjaro postgresql

    参考链接wiki 安装 postgresql 初始化数据库 启动 PostgreSQL 创建数据库用户,创建用户数...

  • MySQL 入门

    登录 查看所有数据库 查看当前使用的数据库 创建数据库 选择数据库 创建表 其他信息的查看 参考https://w...

  • 人,小鼠,大鼠组织免疫细胞比例

    人外周血细胞比例参考: 小鼠脾脏,胸腺,外周血和淋巴结细胞比例参考: 大鼠脾脏,胸腺,外周血细胞比例参考: 粒细胞...

  • 数据库 | MySQL | 1. 数据库操作

    创建数据库 显示数据库列表 进入/切换数据库 修改数据库字符集 重命名数据库 参考链接[https://kalas...

  • SQL语句大全

    SQL语句参考,包含Access、MySQL 以及 SQL Server 基础 创建数据库 CREATE DATA...

  • mysql快速回顾

    MySQL 8.0参考手册 1、连接数据库 2、显示所有数据库 3、创建数据库 4、使用数据库 5、删除数据库 6...

  • Snort mysql概述

    本章5.1节中数据库的创建方法现在已经不再使用,具体创建数据库的方法请参考 这里。此篇文章不适合对照搭建系统,建议...

  • Hive学习笔记(6)DDL

    官方参考文档 LanguageManual DDL 创建/删除/更改/使用数据库 在hive sql中databa...

  • SQLCipher加解密的操作

    1. 创建加密数据库 2. 打开加密数据库 3. 修改数据库密码 4. 加密已有的数据库 5. 解密数据库 参考资...

  • ios本地存储的五种方式

    本文参考自:iOS 本地持久化存储作者:哆啦_本文参考自:iOS CoreData数据库之创建详解作者:tanyu...

网友评论

      本文标题:创建大鼠cistarget参考数据库

      本文链接:https://www.haomeiwen.com/subject/zianbdtx.html