之前做网站,要构建一个网页版的blast,我是一脸懵逼,这东西咋做,我只会在NCBI上用啊,网上找的资料基本还都是如何使用blast我就更懵逼了,问了同学,打开了思路,biopython上有相关函数但是好慢好卡,还容易崩,我又问问了,在本地下载个blast+再写个函数,跑就完事了,最后分析下结果,反正能比对就ok了,按着这思路,就做了如下的工作。

  1.下载blast+

   ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/ 下载对应的版本并进行安装

  2.网页部分的构建

   因为只需要blastn的功能,所以仿照blastn界面谢了一个界面

   2.1 涉及到参数及设计

    序列输入  =》 -query <file_in> 输入你要查找的序列,将上传的序列文件名放进去,最好是绝对路径

    查询范围  =》 -query_loc <n-x> 需要查找的位置(start-stop) ps:start/stop输入是数字型

    查询类型  =》 -task <string> 选择查询的类型,blastn下有好几种类型"blastn","blastn-short","megablast"各有有缺

    保留阈值  =》 -evalue 保留匹配的阈值,自己设定,一般默认是10

    匹配长度  =》 -word_size <integer,>=4> 设置最佳匹配长度

    匹配得分  =》 -reward <int,>=0> 匹配上的得分

    错配罚分  =》 -penalty <int,>=0> 错配的罚分

    open gap  =》 -gapopen<int> open gap 分数

    extend gap =》 -gapextend<int> extend gap分数

    筛选    =》 -dust<str> "yes"or"no" 筛选低复杂区域

    结果输出  =》 -outfmt 输出结果格式

           我用的是 -6 用"\t"格式分割  -7 用"\t"分割,包含注释

           输出还有一些列格式,没怎么用到,所以不赘述

    -6 输出一般是12列

    Queryid(查询id)  Subject id(比对上的id)   identity(配对一致性%)  alignment length(比对上的区域长度)  mismatches(错配数)

    gap open  q.start(匹配上的查询序列起点)  q.end(匹配上查询序列终点)  s.start(匹配上目标序列的起点)  s.end(匹配上目标序列的终点)

    e-value  bitscore(比对上的的得分)

  3.构建自己的库

   载入自己的需要的fa数据作为库 blastn 只要nucl库

   命令:makeblastdb.exe -in 基因组genomic.fna -parse_seqids -hash_index -dbtype nucl -out 自定义库名

  4.写程序获取上传的信息

   我用的是python,切换到blast+所在文件夹/bin/下

   """blastn -query %s  -db %s -out %s -task %s -evalue %d -word_size %d -reward %d -penalty %d -gapopen %d -gapextend %d -dust %s -outfmt 6 """%(inname,db,outname,task,evalue,word_size,reward,penalty,gapopen,gapextend,dust)

    设置好语句,就可以跑了

  5.获取到结果,将结果循环展示到结果界面上

  大概的构建过程就是这样,见仁见智。。记录一下,没白看。。。。

转载于:https://www.cnblogs.com/pipix/p/9929642.html

网页版blast构建相关推荐

  1. 真香!使用 Goland 网页版实现真正的云开发

    云原生玩家往往都是左手 MacBook,右手 Goland,但由于大部分人的 MacBook 硬件资源有限,基本上无法丝滑地使用 Goland.即使你是 8C16G 的高富帅,多开几个 PornHub ...

  2. matlab超出矩阵索引维度_搜你想看“头条搜索”网页版上线 搜索引擎迎来新玩家...

    作者:七声 审校:一条辉 来源:GPLP犀牛财经(ID:gplpcn) 千呼万唤始出来,8月10日,今日头条旗下"头条搜索"网页版正式上线,slogan为"搜你想看&qu ...

  3. 结对项目-小学生四则运算系统网页版项目报告

    结对作业搭档:童宇欣 本篇博客结构一览: 1).前言(包括仓库地址等项目信息) 2).开始前PSP展示 3).结对编程对接口的设计 4).计算模块接口的设计与实现过程 5).计算模块接口部分的性能改进 ...

  4. aria2 32bit Android,【各版本整合】32/64位Aria2 Tools - 支持RPC协议 AriaNG(客户端+网页版)...

    [各版本整合]32/64位Aria2 Tools - 支持RPC协议  AriaNG(客户端+网页版) 前言 话说: 然后 我翻了一下我的硬盘. 找到了这个32位的. 不太懂这方面知识的坛友可直接下载 ...

  5. linux版qq怎么创建桌面快捷方式,Linux_ubuntu系统怎么把网页版QQ添加到程序列表?,新手教程:ubuntu网页QQ快捷方 - phpStudy...

    ubuntu系统怎么把网页版QQ添加到程序列表? 新手教程:ubuntu网页QQ快捷方式 1.chrome浏览器打开网页QQ网址:http://web2.qq.com/ 2.打开菜单>更多工具& ...

  6. 栖霞牌王是怎样炼成的——利用django实现网页版千秋戏(1)

    千秋戏是单机游戏<古剑奇谭>中的一个小卡牌游戏.最近突然有兴趣把它实现成网页版,所以就想尝试着用python的web框架django实现出来.然而以前完全没接触过前后端的东西,所以开几篇博 ...

  7. 微信网页授权:网页版(一)

    转自 http://www.cnblogs.com/0201zcr/p/5133062.html 1.OAuth2.0 OAuth(开放授权)是一个开放标准,允许用户让第三方应用访问该用户在某一网站上 ...

  8. 2048网页版html项目报告,jQuery编写网页版2048小游戏

    大致介绍 看了一个实现网页版2048小游戏的视频,觉得能做出自己以前喜欢玩的小游戏很有意思便自己动手试了试,真正的验证了这句话-不要以为你以为的就是你以为的,看视频时觉得看懂了,会写了,但是自己实现起 ...

  9. python爬虫+网页版微信实时获取消息程序

    项目需求: 目的是24小时爬取各种软件的讯息并且以一种统一的方式集中发送给自己. 实现方法: 利用python的requests库以及wxpy库,前者用来爬取网页,后者用来将爬到的内容发送给自己. 程 ...

最新文章

  1. python代码根据时间获取周数(week of the year)
  2. Python爬虫实战,pyecharts模块,Python数据分析告诉你闲鱼上哪些商品抢手~
  3. WPF如何获得变量异步回调函数时产生的异步回调
  4. 【Android Protobuf 序列化】Protobuf 使用 ( Protobuf 序列化 | Protobuf 反序列化 )
  5. python查找数组中出现次数最多的元素
  6. windows系统用什么web服务器好_墙体保温系统用什么材料比较好
  7. nyoj359Delete it
  8. html2canvas图片不能正常截取,html2canvas关于图片不能正常截取
  9. SAP UI5 Tools 运行了 fiori add deploy-config 命令之后,工程文件发生了哪些变化
  10. JSP 统计网站访问人数
  11. mybatis SqlMapConfig.xml mappers
  12. MVPArms官方快速组件化方案开源,Android快速开发之架构组件
  13. 前端批量生成二维码并打包下载
  14. 内德-米德方法——《数值计算方法》
  15. NanoPi M1 移植 OpenWRT
  16. VC++ CTime COleDateTime的常用操作和比较
  17. 拒绝成为肉鸡 教你几招让黑客永远抓不到你
  18. web移动开发总结(四)
  19. sublime的自动保存设置
  20. android视频开发面试!金三银四我带你去BAT面试现场,附带学习经验

热门文章

  1. linux下I2C驱动发送IO时序,笔记四:linux下IO口模拟实现I2C协议
  2. div为空的时候 浮动没有效果_3种CSS清除浮动的方法
  3. SKLEARN模型选择
  4. java商城_基于Java,jfinal web框架开发出微信商城,微信分销商城源码分享
  5. 二十二、PHP框架Laravel学习笔记——集合的使用
  6. 数据库和ORMS:使用Tortoise ORM与数据库通信
  7. pycharm profile对函数调用效率进行测试
  8. python 属性描述符
  9. 移动计算比移动数据更划算
  10. LeetCode 729. 我的日程安排表 I(set 二分查找)