如何批量下载IMGTHLA数据库 的序列?

如何批量下载IMGTHLA数据库 的序列?,第1张

首先到JGI主页,选择一个物种,然后用Key

Words

search,或者Blast,找到目的序列。点这个目的序列。会出现一排目录,一个基因,一般是About

this

gene,

Sequences,peptide

Homologs,

Gene

Ancestry,

Get

Data,点Sequences就可以得到DNA,cDNA等。如果你想得到两端更长序列,还可以在Show

flanking

sequence调

upstream和downstream,然后点Update

sequence

摘 要 本文以VB6与Access97作为开发工具,介绍了图像在数据中的存储与显示技术。

关键词 数据库,数据控件,二进制,图像存储,图像显示,ADODB,Recordset

数据库是数据管理的最新技术,是计算机科学的重要分支,是现代计算机信息系统和计算机应用的基础和核心。在科学技术高速发展的今天,在信息资源无处不在、无处不用,已成为各部门的重要财富的时候,对于从事程序开发的人员来说显得尤为重要。

如今,对数据库的 *** 作不仅仅满足于对字符和数字的单一 *** 作,图像的存储与显示已显得尤为重要。下面作者将以VB6.0与Access97作为开发工具,分别介绍两种图像显示与存储的方法。

利用数据控件和数据绑定控件

利用这种方法,不写或写少量代码就可以构造简单的数据库应用程序,这种方法易于被初学者接受。在举例之前,先把数据绑定功能简要的说明一下,凡是具有DataSource属性的控件都是对数据敏感的,它们都能通过数据控件直接使用数据库里的数据。比如CheckBox Control , ComboBox Comtrol , TextBox Comtrol , PictureBox Control ,Image Comtrol … 因为这种方式涉及到的知识点比较少,也比较容易理解,不多作说明,现直接介绍编程步骤。

1、从数据库中显示所需要的图片

首先,添加一个Data数据控件,设置它的DatabaseName和RecordSource属性,

strPath = App.Path

If Right(strPath, 1) <>"\" Then

strPath = strPath &"\"

MyData.DatabaseName = strPath &"ExampleDB.mdb" '数据库存地址

MyData.RecordSource = "Info" '表名

第二步,添加Image控件用来显示图片,设置它的DataSource和DataField属性。例如本例中: Image1.DataSource="MyData"和Image1.DataField=" MyPhoto" 。然后设置其它具有数据绑定功能的控件用来显示所要的其它内容,经过这两步的 *** 作,运行程序就可以显示你要的数据了。

2、向数据库中添加需要存储的图片

首先,利用数据控件所具有的AddNew属性,添加一个按钮,双击后添加如下代码MyData.Recordset.AddNew

第二步,为Image控件图片指定图片路径Image1.Picture = LoadPicture("图片路径"),经过这两步的 *** 作,就可以向数据库中添加图片了。

这种方法最简单快捷,要写的代码量很少。但是这种方法在运行速度和灵活性方面有一定的限制,适合于初学者和一些简单的应用,要想灵活多变的显示图像,下面介绍的方法或许更适应您的要求。

利用编写代码实现图片的存储与显示

这种方法相对于方法一来说,代码量大,但是它 *** 作灵活,能够满足多样形式下的 *** 作,受到更多编程者的青睐。但是涉及到的知识面相对要多一些,不仅要掌握数据库的 *** 作方法,还要二进制文件的读写作进一步的了解。关于数据库及二进制文件的基本 *** 作很多参考书上都介绍的比较详细,需要时请查阅即可。在编程之前把本部分用到的变量说明如下:

Dim RS As New ADODB.Recordset

Dim Chunk() As Byte

Const ChunkSize As Integer = 2384

Dim DataFile As Integer, Chunks, Fragment As Integer

Dim MediaTemp As String

Dim lngOffset, lngTotalSize As Long

Dim i As Integer

1、从数据库中显示所需要的图片

第一步首先打开数据库,看有没有要查找的内容,有则继续执行,没有就退出

RS.Source = "select * from Info Where Name='" &sparaName &"'"

RS.ActiveConnection = "UID=PWD=DSN=TestDB"

RS.Open

If RS.EOF Then RS.cCose : Exit Sub

第二步,读出长二进制数据即图片数据,把它转换成图片文件, *** 作过程如下

MediaTemp = strPath &"picturetemp.tmp"

DataFile = 1

Open MediaTemp For Binary Access Write As DataFile

lngTotalSize = RS!MyPhoto.ActualSize

Chunks = lngTotalSize \ ChunkSize

Fragment = lngTotalSize Mod ChunkSize

ReDim Chunk(Fragment)

Chunk() = RS!MyPhoto.GetChunk(Fragment)

Put DataFile, , Chunk()

For i = 1 To Chunks

ReDim Chunk(ChunkSize)

Chunk() = RS!MyPhoto.GetChunk(ChunkSize)

Put DataFile, , Chunk()

Next i

Close DataFile

第三步,关闭数据库,这样就可以显示所要的图片了。

RS.Close

If MediaTemp = "" Then Exit Sub

Picture1.Picture = LoadPicture(MediaTemp)

If Picture1.Picture = 0 Then Exit Subj

2、向数据库中添加需要存储的图片

向数据库添加存储的图片是显示图片逆过程,只要掌握了显示图片的 *** 作,存储图片的 *** 作也就迎刃而解了,下面将 *** 作步骤介绍如下

第一步首先打开数据库,过程如下:

RS.Source = "select * from Info "

RS.CursorType = adOpenKeyset

RS.LockType = adLockOptimistic

RS.ActiveConnection = "UID=PWD=DSN=TestDB"

RS.Open

第二步,把要存储的图片转换成二进制长文件存入数据库中, *** 作过程如下

RS.AddNew

DataFile = 1

Open strPathPicture For Binary Access Read As DataFile

FileLen = LOF(DataFile) ' 文件中数据长度

If FileLen = 0 Then : Close DataFile : RS.Close : Exit Sub

Chunks = FileLen \ ChunkSize

Fragment = FileLen Mod ChunkSize

ReDim Chunk(Fragment)

Get DataFile, , Chunk()

RS!MyPhoto.AppendChunk Chunk()

ReDim Chunk(ChunkSize)

For i = 1 To Chunks

Get DataFile, , Chunk()

RS!MyPhoto.AppendChunk Chunk()

Next i

Close DataFile

第三步,更新纪录后,关闭数据库,就完成了数据图片到数据库的存储。

RS.Update

RS.Close

Set RS = Nothing

两种方法在使用方面各有所长,读者可以针对自己的情况做出合理的选择。

方法很容易实现的.和楼上的不太一样.

必学:1、计算机基础(linux+perl+R 或者 python+matlab)

2、生信基础知识(测序+数据库+数据格式)

3、生信研究领域(全基因组,全转录组,全外显子组,捕获目标区域测序)

4、生信应用领域(肿瘤筛查,产前诊断,流行病学,个性化医疗)

分而治之:

一、计算机基础,需要看三本书,一步步的学会学通,不需要刻意去找哪个书,一般linux是鸟哥私房菜,perl是小骆驼咯,R是R in action,但是看一本书只能入门,真正想成为菜鸟,必须每个要看五本书以上!我云盘里面有这基本上的高清打印版,大家可以去淘宝打印一下才几十块钱还包邮,对书比较讲究的也可以买正版,也不过是一百多块钱而已!

二、生信基础知识,测序方面,在百度文库找十几篇一代二代三代测序仪资料仔细研读,然后去优酷下载各大主流测序仪的动画讲解,再看看陈巍学基因的讲解;数据库先看看三大主流数据库——NCBI,ENSEMBL,UCSC,还有一些也可以了解一些(uniprot,IMGT,KEGG,OMIN,TIGR,GO)同样也是百度文库自己搜索资料,但是这次需要自己去官网一个个页面点击看,一个个翻译成中文理解吃透;数据格式讲起了就多了,这个主要是在项目流程中慢慢学,或者你有机会去上课,不然你看来也是立马忘记的,主要有sam,vcf,fasta,fastq,bed,gtf,gff,genbank,ensembl,psl等等

三、生信研究领域,各个领域主要是软件繁多,合起来常用的估计有上百个软件了,一般只有从业五六年以上的人才有可能把它们全部用过一遍,而且这也完全需要项目来训练,而不能仅仅是看看软件手册,但是研究领域最重要的是背后的原理,需要看各大牛的综述。

a) 生信基础软件(blast++套件,fastqc,flash,blast,solexaQA,NGS-QC-toolkit,SRA-toolkit,fastx-toolkit)

b) snp-calling相关软件(bwa,bowtie,samtools,GATK,VarScan.jar,annovar)

c) 基因组相关软件(velvet,SOAPdenovo2,repeatmasker,repeatscount,piler,orthMCL,inparanoid,clustw,muscle,MAFFT,quickparanoid,blast2go,RAxML,phyML)

d) 转录组相关软件(trinity,tophat,cufflinks,RseQC,RNAseq,GOseq,MISO,RSEM,khmer,screed,trimmomatic,transDecoder,vast-tools,picard-tools,htseq,cuffdiff,edgeR,DEseq,funnet,davidgo,wego,kobas,KEGG,Amigo,go)


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6657656.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-26
下一篇 2023-03-26

发表评论

登录后才能评论

评论列表(0条)

保存