miRNA测序数据生信分析——第二讲,数据库下载整理

2023-10-10 23:28

本文主要是介绍miRNA测序数据生信分析——第二讲,数据库下载整理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

miRNA测序数据生信分析——第二讲,数据库下载整理

  • miRNA测序数据生信分析——第二讲,数据库下载整理
    • 1. Rfam数据库
      • 1.1 Rfam数据库——简单概述
      • 1.2 Rfam数据库——下载整理:两种情况
        • 1.2.1 用于注释基因组上的ncRNA基因序列
        • 1.2.2 用于注释ncRNA/sRNA测序中的tRNA和rRNA序列
    • 2. miRBase数据库
      • 2.1 miRBase数据库——简单概述
      • 2.2 miRBase数据库——下载整理
    • 3. miRTarBase数据库
      • 3.1 miRTarBase数据库——简单概述
      • 3.2 miRTarBase数据库——下载整理
    • 4. miRDB数据库
      • 4.1 miRDB数据库——简单概述
      • 4.2 miRDB数据库——下载整理
    • 5. TargetScan数据库
      • 5.1 TargetScan数据库——简单概述
    • 6. TargetMiner数据库
      • 6.1 TargetMiner数据库——简单概述

miRNA测序数据生信分析——第二讲,数据库下载整理

有六个Rfam、miRBase、miRTarBase、miRDB、TargetScan和TargetMiner
重点是前4个。
这一部分:在对数据库整理时,涉及到三个软件(infernal、blast、seqkit)、2个脚本的撰写以及对NCBI的Refseq和GENE数据库的使用

1. Rfam数据库

1.1 Rfam数据库——简单概述

一个非编码RNA的整合数据库,可用来识别鉴定各种类型的ncRNA。提供的是ncRNA在基因组上的基因序列,而非转录成熟ncRNA的序列。
官方网站:https://rfam.xfam.org/
指导手册:http://eddylab.org/infernal/Userguide.pdf
下载Rfam数据库文件地址:https://ftp.ebi.ac.uk/pub/databases/Rfam/CURRENT/
最新版:2022-11-02
Rfam数据库中ncRNA类型分三大类:Cis-reg和Gene和Intron。这三大类又有子类。
在这里插入图片描述

1.2 Rfam数据库——下载整理:两种情况

Rfam数据库使用的两种情况:
①用于注释基因组上的ncRNA基因序列
②用于注释ncRNA/sRNA测序中的tRNA和rRNA序列(miRNA、lncRNA转录会加工成mature miRNA,因此不能注释)
两种情况分析时准备的Rfam数据库文件和整理方法是不同的,这里分别阐述。

1.2.1 用于注释基因组上的ncRNA基因序列

需要的Rfam数据库文件:Rfam.clanin、Rfam.cm和family.txt
需要的软件:infernal

#软件infernal
#官网:http://eddylab.org/infernal/,下载最新安装包
#安装
cd /home/zhaohuiyao/Biosoft/ncRNA_soft
wget http://eddylab.org/infernal/infernal-1.1.4-linux-intel-gcc.tar.gz
tar -zxvf ./infernal-1.1.4-linux-intel-gcc.tar.gz
#已是编译好的版本。可执行文件位置:/home/zhaohuiyao/Biosoft/ncRNA_soft/infernal-1.1.4-linux-intel-gcc/binaries/cd /home/zhaohuiyao/Database/Rfam
wget https://ftp.ebi.ac.uk/pub/databases/Rfam/CURRENT/Rfam.clanin
wget https://ftp.ebi.ac.uk/pub/databases/Rfam/CURRENT/Rfam.cm.gz
wget https://ftp.ebi.ac.uk/pub/databases/Rfam/CURRENT/database_files/family.txt.gz
gunzip ./Rfam.cm.gz
gunzip ./family.txt.gz
#建立数据库索引
/home/zhaohuiyao/Biosoft/ncRNA_soft/infernal-1.1.4-linux-intel-gcc/binaries/cmpress /home/zhaohuiyao/Database/Rfam/Rfam.cm
1.2.2 用于注释ncRNA/sRNA测序中的tRNA和rRNA序列

需要的Rfam数据库文件:Rfam.fa、Rfam.full_region和family.txt
需要的软件:blast
需要自己写一个脚本:Deal_Rfam_full_region.py

cd /home/zhaohuiyao/Database/Rfam
wget https://ftp.ebi.ac.uk/pub/databases/Rfam/CURRENT/fasta_files/Rfam.fa.gz
wget https://ftp.ebi.ac.uk/pub/databases/Rfam/CURRENT/Rfam.full_region.gz
wget https://ftp.ebi.ac.uk/pub/databases/Rfam/CURRENT/database_files/family.txt.gz
gunzip ./Rfam.fa.gz
gunzip ./Rfam.full_region.gz
gunzip ./family.txt.gz#特别注意:Rfam.fa(保存ncRNA序列)和Rfam.full_region(ncRNA属于哪个RF家族),两者信息数量不对等,需要手动修正。
#最终拿到两者信息完美匹配的Rfam.fa和Rfam.full_region
python3 ./Deal_Rfam_full_region.py -i ./Rfam.fa -I ./Rfam.full_region -o ./

在这里插入图片描述

#结果文件Rfam.full_region.tmp和Rfam.fa.tmp替换原来的文件
mv Rfam.full_region.tmp Rfam.full_region
mv Rfam.fa.tmp Rfam.fa			#最终的Rfam.fa长度从19~10656bp
/home/zhaohuiyao/Biosoft/general/seqkit stat -j 16 -T ./Rfam.fa

在这里插入图片描述

#建立数据库索引
/home/zhaohuiyao/Biosoft/general/ncbi-blast-2.10.0+/bin/makeblastdb -in ./Rfam.fa -dbtype nucl -out ./Rfam

2. miRBase数据库

2.1 miRBase数据库——简单概述

一个提供包括miRNA序列数据、注释、预测基因靶标等信息的全方位数据库,是存储miRNA信息最主要的公共数据库之一。
官方网址:https://www.mirbase.org/
下载地址:https://www.mirbase.org/ftp/CURRENT/
最新版:2018-12-01

2.2 miRBase数据库——下载整理

cd /home/zhaohuiyao/Database/miRBase
wget https://www.mirbase.org/ftp/CURRENT/organisms.txt.gz
wget https://www.mirbase.org/ftp/CURRENT/mature.fa.gz
gunzip ./organisms.txt.gz
grep -v "#" ./organisms.txt | wc -l				#285个物种
gunzip ./mature.fa.gz

3. miRTarBase数据库

3.1 miRTarBase数据库——简单概述

一个保存miRNA靶基因信息的数据库,其中存在的MITs是经过实验验证的,包括reporter assay, western blot, microarray and next-generation sequencing experiments等实验方法。因此可信度高。最新版v9.0,时间2021-09,依据miRBase v22。
官方网址:https://mirtarbase.cuhk.edu.cn/~miRTarBase/miRTarBase_2022/php/index.php
包括物种:37种。有单独物种的文件(例:hsa_MTI.xlsx),也有全部物种的文件miRTarBase_MTI.xlsx。

3.2 miRTarBase数据库——下载整理

对miRTarBase_MTI.xlsx进行提取,仅保留三列。miRNA,Target Gene,Target Gene (Entrez ID)。并删除重复项。(重复原因,不同的实验方法对同一靶向关系验证),拿到最终文件miRTarBase_MTI.txt
这个处理可以在Windows下用excel完成,①直接删列;②将miRNA与Target Gene两列合并(=A1&“_”&B1),利用合并后的字符串进行去重复。
但是没有想到,文件里面有迷惑的地方。令人不解
请添加图片描述
miRNA的名称与物种之间不一致,这种情况,我就忽略了
cd /home/zhaohuiyao/Database/miRTarBase
#文件miRTarBase_MTI.txt
在这里插入图片描述
grep -v “#” ./miRTarBase_MTI.txt | awk ‘{split($0,arr,“-”);print arr[1]}’ | sort | uniq > miRTarBase.organism
wc -l miRTarBase.organism #26个物种

4. miRDB数据库

4.1 miRDB数据库——简单概述

一个保存miRNA靶基因信息的数据库。最新版v6.0,时间2019-06,依据miRBase v22。
六大模块:Target Search、Target Expression、Target Ontology、Target Mining、Custom Prediction、FuncMir Collection
官方网址:https://mirdb.org/
仅针对5个物种的靶基因信息进行分析。(人类,小鼠,褐家鼠,家狗,原鸡)
在这里插入图片描述

4.2 miRDB数据库——下载整理

cd /home/zhaohuiyao/Database/miRDB
wget https://mirdb.org/download/miRDB_v6.0_prediction_result.txt.gz
gunzip ./miRDB_v6.0_prediction_result.txt.gz
grep -v “#” ./miRDB_v6.0_prediction_result.txt | awk ‘{split($0,arr,“-”);print arr[1]}’ | sort | uniq > miRDB.organism #5个物种

出现问题:
举例如下
以cfa-miR-1185为例,在miRDB官网进行检索,点击Target Search,检索靶标基因,结果如下
在这里插入图片描述
在这里插入图片描述
#有714个靶基因,且有靶基因的Gene Symbol
但是呀,万万没有想到!!!在下载的数据库文件miRDB_v6.0_prediction_result.txt文件中进行检索,结果有2287个
grep -c “cfa-miR-1185” ./miRDB_v6.0_prediction_result.txt 在这里插入图片描述
#并且检索结果中是靶mRNA的检索号,而不是Gene Symbol

因此,需要我们自己提供Gene Symbol和靶mRNA检索号的对应关系,对miRDB_v6.0_prediction_result.txt进行整理。这个整理有点复杂

#第一步,下载Gene Entrez ID和mRNA检索号的对应关系文件。依据NCBI的RefSeq数据库
cd /home/zhaohuiyao/Database/RefSeq
wget https://ftp.ncbi.nlm.nih.gov/refseq/release/release-catalog/release218.accession2geneid.gz
gunzip ./release218.accession2geneid.gz
在这里插入图片描述
#该文件由四列组成,分别是Taxonomic ID、Entrez GeneID、Transcript accession.version 、Protein accession.version。若第三列转录本检索号由NR或XR开头,表示非编码基因,则第四列的值为na

#第二步,下载Entrez GeneID和Gene Symbol的对应关系文件。依据NCBI的GENE数据库
#可以下载NCBI上所有基因的文件,不分物种
https://ftp.ncbi.nlm.nih.gov/gene/DATA/GENE_INFO/All_Data.gene_info.gz
#但是不划算,我只需要分别下载5个物种的基因文件
#这里以Homo sapiens(hsa)为例
cd /home/zhaohuiyao/Database/miRDB
wget https://ftp.ncbi.nlm.nih.gov/gene/DATA/GENE_INFO/Mammalia/Homo_sapiens.gene_info.gz
gunzip ./Homo_sapiens.gene_info.gz

#第三步,依据第一步和第二步下载的文件,对miRDB_v6.0_prediction_result.txt进行整理,拿到独属于指定物种的关系文件
python3 ./Deal_miRDB.py -i ./miRDB_v6.0_prediction_result.txt -db1 …/RefSeq/release218.accession2geneid -db2 ./Homo_sapiens.gene_info -s hsa -o ./
在这里插入图片描述
#结果文件miRDB_v6.0_prediction_result.txt.hsa(3351016)和miRDB_v6.0_prediction_result.txt.hsa.Error(0+24725)
在这里插入图片描述
在这里插入图片描述
#第四步,分在再完成物种Mus_musculus(mmu)、物种Rattus norvegicus(rno)、物种Canis familiaris(cfa)和物种Gallus gallus(gga)的整理工作
#第五步,将5个物种的结果进行整合。
cat miRDB_v6.0_prediction_result.txt.hsa miRDB_v6.0_prediction_result.txt.mmu miRDB_v6.0_prediction_result.txt.rno miRDB_v6.0_prediction_result.txt.cfa miRDB_v6.0_prediction_result.txt.gga > miRDB_v6.0_prediction_result.txt.final

5. TargetScan数据库

5.1 TargetScan数据库——简单概述

一个保存miRNA靶基因信息的数据库。最新版v7.2,时间2018-03。
官网:https://www.targetscan.org/vert_80/
没有一个完整的数据库,只有不同物种的各自数据库,若想本地进行检索,需要分别下载。
物种有:Human、Mouse、Rat、chimpanzee、Rhesus、Cow、Dog、Opossum、Chicken、Frog、Worm、Fly、Fish等。(但只有Human、Mouse、Worm、Fly、Fish能做本地检索,下载靶标信息文件)
#选择物种和靶基因的名称
在这里插入图片描述

6. TargetMiner数据库

6.1 TargetMiner数据库——简单概述

版本2012年,没有更新,且只有人类,不常使用
官网:https://www.isical.ac.in/

这篇关于miRNA测序数据生信分析——第二讲,数据库下载整理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/183840

相关文章

慢sql提前分析预警和动态sql替换-Mybatis-SQL

《慢sql提前分析预警和动态sql替换-Mybatis-SQL》为防止慢SQL问题而开发的MyBatis组件,该组件能够在开发、测试阶段自动分析SQL语句,并在出现慢SQL问题时通过Ducc配置实现动... 目录背景解决思路开源方案调研设计方案详细设计使用方法1、引入依赖jar包2、配置组件XML3、核心配

Java NoClassDefFoundError运行时错误分析解决

《JavaNoClassDefFoundError运行时错误分析解决》在Java开发中,NoClassDefFoundError是一种常见的运行时错误,它通常表明Java虚拟机在尝试加载一个类时未能... 目录前言一、问题分析二、报错原因三、解决思路检查类路径配置检查依赖库检查类文件调试类加载器问题四、常见

Java注解之超越Javadoc的元数据利器详解

《Java注解之超越Javadoc的元数据利器详解》本文将深入探讨Java注解的定义、类型、内置注解、自定义注解、保留策略、实际应用场景及最佳实践,无论是初学者还是资深开发者,都能通过本文了解如何利用... 目录什么是注解?注解的类型内置注编程解自定义注解注解的保留策略实际用例最佳实践总结在 Java 编程

MySQL数据库约束深入详解

《MySQL数据库约束深入详解》:本文主要介绍MySQL数据库约束,在MySQL数据库中,约束是用来限制进入表中的数据类型的一种技术,通过使用约束,可以确保数据的准确性、完整性和可靠性,需要的朋友... 目录一、数据库约束的概念二、约束类型三、NOT NULL 非空约束四、DEFAULT 默认值约束五、UN

一文教你Python如何快速精准抓取网页数据

《一文教你Python如何快速精准抓取网页数据》这篇文章主要为大家详细介绍了如何利用Python实现快速精准抓取网页数据,文中的示例代码简洁易懂,具有一定的借鉴价值,有需要的小伙伴可以了解下... 目录1. 准备工作2. 基础爬虫实现3. 高级功能扩展3.1 抓取文章详情3.2 保存数据到文件4. 完整示例

使用Java将各种数据写入Excel表格的操作示例

《使用Java将各种数据写入Excel表格的操作示例》在数据处理与管理领域,Excel凭借其强大的功能和广泛的应用,成为了数据存储与展示的重要工具,在Java开发过程中,常常需要将不同类型的数据,本文... 目录前言安装免费Java库1. 写入文本、或数值到 Excel单元格2. 写入数组到 Excel表格

Python中的Walrus运算符分析示例详解

《Python中的Walrus运算符分析示例详解》Python中的Walrus运算符(:=)是Python3.8引入的一个新特性,允许在表达式中同时赋值和返回值,它的核心作用是减少重复计算,提升代码简... 目录1. 在循环中避免重复计算2. 在条件判断中同时赋值变量3. 在列表推导式或字典推导式中简化逻辑

python处理带有时区的日期和时间数据

《python处理带有时区的日期和时间数据》这篇文章主要为大家详细介绍了如何在Python中使用pytz库处理时区信息,包括获取当前UTC时间,转换为特定时区等,有需要的小伙伴可以参考一下... 目录时区基本信息python datetime使用timezonepandas处理时区数据知识延展时区基本信息

Qt实现网络数据解析的方法总结

《Qt实现网络数据解析的方法总结》在Qt中解析网络数据通常涉及接收原始字节流,并将其转换为有意义的应用层数据,这篇文章为大家介绍了详细步骤和示例,感兴趣的小伙伴可以了解下... 目录1. 网络数据接收2. 缓冲区管理(处理粘包/拆包)3. 常见数据格式解析3.1 jsON解析3.2 XML解析3.3 自定义

SpringMVC 通过ajax 前后端数据交互的实现方法

《SpringMVC通过ajax前后端数据交互的实现方法》:本文主要介绍SpringMVC通过ajax前后端数据交互的实现方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价... 在前端的开发过程中,经常在html页面通过AJAX进行前后端数据的交互,SpringMVC的controll