软件简介

MCScanX工具集对MCScan算法进行了调整,用于检测共线性和同线性区域,还增加了可视化和下游分析。。MCscanX有三个核心工具,以及12个下游分析工具。

软件安装

进入官网http://chibba.pgml.uga.edu/mcscan2/#tm,下载安装

1 unzip MCscanX.zip
2 cd MCScanX
3 make

软件使用

  • 所需要文件

     两个或多个物种的gff文件,蛋白序列(** 该软件最多能做5个物种的共线性

  • 第一步:构建索引,进行blastp比对

注意!这里是找at和vv两个基因组组内和组间的共线性,因为想同时知道物种内和物种间的共线性,所以在blast之前把at和vv的基因组facat到一起,既做database,又做query,如果只想知道组间的共线性,那么就任取一个基因组为database,另一个做query
注意! 如果一个基因有多个转录本,只选择注释中的第一条
1 ## 合并
2 cat at.fa vv.fa >>all.fa
3
4 ## 建库
5 makeblastdb -in all.fa -dbtype prot -out index/all -parse_seqids
6
7 ## 比对
8 blastp -query all.fa -db index/all -out all.blast -evalue 1e-5 -num_threads 10 -outfmt 6 -num_alignments 5
  • 第二步:构建gff文件

MCscanX要求的gff文件和标准的gff文件不一样,它只有四列, 其中"sp#"的sp意味着你要用2个字母代表物种,#则表示是哪条染色体。而"gene"则要是你蛋白序列的基因名

注意:all.gff, all.blastp 前缀需要一样,并且在同一文件夹下
1 sp# gene    starting_position  ending_position

根据物种的gff3文件利用awk 快速得到MCscanX要求的gff文件

  • 第三步:MCScanX寻找共线性区块

1 MCScanX ./all
  • 结果文件

输出文件分为两个:

        第一个是at_rice.collinearity, 记录着共线性区块(collinear blocks), 可以选择共线性区块基因大于10以上为可信区域

        第二个是一个网页格式

  • 输出共线性基因的位置信息

  •  1 #!/usr/bin/env python
    2 # _*_ coding: utf-8 _*_
    3
    4 import sys,re
    5
    6 gene_info = {}
    7 syn_info = {}
    8
    9 IN = sys.argv[1] ##*.gff
    10 IN1 = sys.argv[2] ## *.collinearity
    11 IN2 = sys.argv[3] ## number,int;
    12
    13 with open(IN) as f,\
    14 open(IN1) as f1,\
    15 open("%s_syn_region_info" %IN.strip(".gff"),"w") as o:
    16 for i in f:
    17 i=i.strip().split()
    18 gene_info[i[1]] = [i[0],i[2],i[3]]
    19 for x in f1:
    20 if '## Alignment' in x:
    21 res=x.strip()
    22 if res not in syn_info:
    23 syn_info[res] = []
    24 elif '#' not in x:
    25 x=x.strip().split()
    26 tem = x[-3]+"&&"+x[-2]
    27 syn_info[res].append(tem)
    28 for k,v in syn_info.items():
    29 num = re.search(r" N=(\d+) ",k).group(1)
    30 if int(num) >= 10:
    31 for n in v:
    32 # print n
    33 gene1 = n.split("&&")[0]
    34 gene2 = n.split("&&")[1]
    35 gene1_chr = gene_info[gene1][0]
    36 gene1_start = gene_info[gene1][1]
    37 gene1_end = gene_info[gene1][2]
    38 gene2_chr = gene_info[gene2][0]
    39 gene2_start = gene_info[gene2][1]
    40 gene2_end = gene_info[gene2][2]
    41 o.write("%s\t%s\t%s\t%s\t%s\t%s\t%s\t%s\n"%(gene1_chr,gene1,gene1_start,gene1_end,gene2,gene2_chr,gene2_start,gene2_end))

基因组共线性工具MCScanX使用说明

基因组共线性工具MCScanX使用说明

------END------

关注下方公众号可获得更多精彩

基因组共线性分析工具MCScanX的更多相关文章

  1. 史上最全 | 39个RNAseq分析工具与对比

    文献:Sahraeian S M E, Mohiyuddin M, Sebra R, et al. Gaining comprehensive biological insight into the ...

  2. OS Tools-GO富集分析工具的使用与解读详细教程

    我们的云平台上的GO富集分析工具,需要输入的文件表格和参数很简单,但很多同学都不明白其中的原理与结果解读,这个帖子就跟大家详细解释~ 一.GO富集介绍:       Gene Ontology(简称G ...

  3. Android代码分析工具lint学习

    1 lint简介 1.1 概述 lint是随Android SDK自带的一个静态代码分析工具.它用来对Android工程的源文件进行检查,找出在正确性.安全.性能.可使用性.可访问性及国际化等方面可能 ...

  4. 【转】gc日志分析工具

    性能测试排查定位问题,分析调优过程中,会遇到要分析gc日志,人肉分析gc日志有时比较困难,相关图形化或命令行工具可以有效地帮助辅助分析. Gc日志参数 通过在tomcat启动脚本中添加相关参数生成gc ...

  5. Java 性能分析工具 , 第 3 部分: Java Mission Control

    引言 本文为 Java 性能分析工具系列文章第三篇,这里将介绍如何使用 Java 任务控制器 Java Mission Control 深入分析 Java 应用程序的性能,为程序开发人员在使用 Jav ...

  6. Java 性能分析工具 , 第 2 部分:Java 内置监控工具

    引言 本文为 Java 性能分析工具系列文章第二篇,第一篇:操作系统工具.在本文中将介绍如何使用 Java 内置监控工具更加深入的了解 Java 应用程序和 JVM 本身.在 JDK 中有许多内置的工 ...

  7. Java 性能分析工具 , 第 1 部分: 操作系统工具

    引言 性能分析的前提是将应用程序内部的运行状况以及应用运行环境的状况以一种可视化的方式更加直接的展现出来,如何来达到这种可视化的展示呢?我们需要配合使用操作系统中集成的程序监控工具和 Java 中内置 ...

  8. 系统级性能分析工具perf的介绍与使用

    测试环境:Ubuntu16.04(在VMWare虚拟机使用perf top存在无法显示问题) Kernel:3.13.0-32 系统级性能优化通常包括两个阶段:性能剖析(performance pro ...

  9. KRPano资源分析工具使用说明(KRPano XML/JS解密 切片图批量下载 球面图还原 加密混淆JS还原美化)

    软件交流群:571171251(软件免费版本在群内提供) krpano技术交流群:551278936(软件免费版本在群内提供) 最新博客地址:blog.turenlong.com 限时下载地址:htt ...

随机推荐

  1. “介绍一下自己吧”——记2020BUAA软工团队介绍和采访

    写在前面 项目 内容 这个作业属于哪个课程 2020春季计算机学院软件工程(罗杰 任建) 这个作业的要求在哪里 团队作业-团队介绍和采访 团队介绍 团队名称 我们是 BUAA软软软件工程小队 ,简称 ...

  2. 第5次 Beta Scrum Meeting

    本次会议为Beta阶段第6次Scrum Meeting会议 会议概要 会议时间:2021年6月6日 会议地点:「腾讯会议」线上进行 会议时长:10min 会议内容简介:对完成工作进行阶段性汇报:对下一 ...

  3. [no_code][Alpha]测试报告

    项目 内容 2020春季计算机学院软件工程(罗杰 任健) 2020春季计算机学院软件工程(罗杰 任健) 作业要求 测试报告 我们在这个课程的目标是 设计出一个OCR表单处理软件 这个作业在哪个具体方面 ...

  4. springboot多配置环境

    在我们的开发过程中,经常会有多套配置环境,比如开发环境(dev),测试环境(test),生产环境(prod)等,在各个环境中我们需要使用到不同的配置,那么在springboot中是如何做到的呢? 1. ...

  5. Java基础之原生JDBC操作数据库

    前言 日常开发中,我们都习惯了使用ORM框架来帮我们操作数据库,本文复习.记录Java如何使用原生JDBC操作数据库 代码编写 封装几个简单方法 find查询方法 findOne查询方法 update ...

  6. Apache Kafka 学习笔记

    1. 介绍Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写.Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据. 这种动 ...

  7. WPF进阶技巧和实战03-控件(3-文本控件及列表控件)

    系列文章链接 WPF进阶技巧和实战01-小技巧 WPF进阶技巧和实战02-布局 WPF进阶技巧和实战03-控件(1-控件及内容控件) WPF进阶技巧和实战03-控件(2-特殊容器) WPF进阶技巧和实 ...

  8. K8S在线部署含Dashborad

    参考文章 https://www.kubernetes.org.cn/5462.html 前言 Kubernetes作为容器编排工具,简化容器管理,提升工作效率而颇受青睐.很多新手部署Kubernet ...

  9. kail入侵xp实例

    Kali的IP地址是192.168.0.112 Windows XP的IP地址是192.168.0.108 本文演示怎么使用Metasploit入侵windows xp sp3. 启动msfconso ...

  10. SQL*Loader-704: Internal error: ulconnect: OCIServerAttach [0] ORA-12541: TNS:no listener

    使用/app/oracle/product/11.2.0/bin/sqlldr导入数据报错: 监听没有开启?检查发现监正常 猜测是监听端口不是默认的1521有关系,直接在sid里面加上数据库服务器的i ...