<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>生信菜鸟团 &#187; biostring</title>
	<atom:link href="http://www.bio-info-trainee.com/tag/biostring/feed" rel="self" type="application/rss+xml" />
	<link>http://www.bio-info-trainee.com</link>
	<description>欢迎去论坛biotrainee.com留言参与讨论，或者关注同名微信公众号biotrainee</description>
	<lastBuildDate>Sat, 28 Jun 2025 14:30:13 +0000</lastBuildDate>
	<language>zh-CN</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=4.1.33</generator>
	<item>
		<title>Biostrings包简介</title>
		<link>http://www.bio-info-trainee.com/764.html</link>
		<comments>http://www.bio-info-trainee.com/764.html#comments</comments>
		<pubDate>Thu, 21 May 2015 09:50:12 +0000</pubDate>
		<dc:creator><![CDATA[ulwvfje]]></dc:creator>
				<category><![CDATA[R]]></category>
		<category><![CDATA[基础数据库]]></category>
		<category><![CDATA[bioconductor]]></category>
		<category><![CDATA[biostring]]></category>

		<guid isPermaLink="false">http://www.bio-info-trainee.com/?p=764</guid>
		<description><![CDATA[首先讲讲它的对象 有下面几个字符串对象BString, DNAString, R &#8230; <a href="http://www.bio-info-trainee.com/764.html">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<h1></h1>
<h3><b>首先讲讲它的对象</b></h3>
<p>有下面几个字符串对象BString, DNAString, RNAString and AAString可以通过以下代码构造它们：</p>
<p>b &lt;- BString("I am a BString object")</p>
<p>d &lt;- DNAString("TTGAAAA-CTC-N")</p>
<p>这两个对象的区别是DNAstring对象对字符串的要求严格一些，只有IUPAC字符和+-字符可以。</p>
<p>对构造好的对象可以通过下标来取子字符串对象，也可以通过subseq来取，但是子字符串仍然是数据对象，只有通过toString函数才能把它们转化成字符串。</p>
<p>用length(dd2)和nchar(toString(dd2))都可以找到我们Biostrings对象的长度。但是后者速度会很慢。</p>
<p>Views(RNAString("AU"), start=0, end=2)这个函数可以把string对象任意截取成list</p>
<p>start, end and width可以作用于我们截取的list，判断list里面的元素在原来的string对象上面的起始终止及长度信息。</p>
<p>&nbsp;</p>
<h3><b>接下来讲这个包带有的一个比对函数！</b></h3>
<p>&gt; pairwiseAlignment(pattern = c("succeed", "precede"), subject = "supersede")</p>
<p>Global PairwiseAlignmentsSingleSubject (1 of 2)pattern: [1] succ--eed subject: [1] supersede score: -33.99738</p>
<p>&gt; pairwiseAlignment(pattern = c("succeed", "precede"), subject = "supersede",type = "local")</p>
<p>Local PairwiseAlignmentsSingleSubject (1 of 2)pattern: [1] su subject: [1] su score: 5.578203</p>
<p>&gt; pairwiseAlignment(pattern = c("succeed", "precede"), subject = "supersede",gapOpening = 0, gapExtension = 1)</p>
<p>Global PairwiseAlignmentsSingleSubject (1 of 2)pattern: [1] su-cce--ed subject: [1] sup--</p>
<p>可以看出这个比对函数可以调整的参数实在是太多了，而且改变参数之后比对情况大不一样，还有很多参数就不一一细讲了。</p>
<p>这个比对结果可以赋值给一个变量，保存比对的对象。</p>
<p>psa1 &lt;- pairwiseAlignment(pattern = c("succeed", "precede"), subject = "supersede")</p>
<p>class(psa1)</p>
<p>summary(psa1)</p>
<p>class(pattern(psa1))</p>
<p>class(summary(psa1))</p>
<p>score(psa2)</p>
<p>还可以自己构建打分矩阵来进行比对。</p>
<p>submat &lt;-</p>
<p>+ matrix(-1, nrow = 26, ncol = 26, dimnames = list(letters, letters))</p>
<p>diag(submat) &lt;- 0</p>
<p><a href="http://www.bio-info-trainee.com/wp-content/uploads/2015/05/Biostrings包简介1454.png"><img class="alignnone size-full wp-image-765" src="http://www.bio-info-trainee.com/wp-content/uploads/2015/05/Biostrings包简介1454.png" alt="Biostrings包简介1454" width="554" height="411" /></a></p>
<p>psa2 &lt;-pairwiseAlignment(pattern = c("succeed", "precede"), subject = "supersede",substitutionMatrix = submat, gapOpening = 0, gapExtension = 1)</p>
<p>我们的包还自带了两个非常流行的氨基酸比对矩阵PAM和BLOSUM</p>
<p>ls("package:Biostrings")可以查看这个包所有的对象。</p>
<p>data(package="Biostrings")可以查看这个包所有的数据对象</p>
<p>还有很多其它函数</p>
<p>还可以去除adaptor，挺好玩的</p>
<h3><b>既然有配对比对函数，那么就有多重比对函数！</b></h3>
<p>我们可以读取clustaW, Phylip and Stolkholm这几种不同的比对结果文件来构造多重比对对象。</p>
<p>library(Biostrings)这个包里面自带了两个文件，我们可以示范一下构建对象。</p>
<p>origMAlign &lt;- readDNAMultipleAlignment(filepath = system.file("extdata", "msx2_mRNA.aln", package="Biostrings"), format="clustal")</p>
<p>phylipMAlign &lt;- readAAMultipleAlignment(filepath = system.file("extdata","Phylip.txt", package="Biostrings"),format="phylip")</p>
<p>&nbsp;</p>
<p>对构造好的多重比对对象就可以构建进化树啦，代码如下！</p>
<p>sdist &lt;- stringDist(as(origMAlign,"DNAStringSet"), method="hamming")</p>
<p>&gt; clust &lt;- hclust(sdist, method = "single")</p>
<p>&gt; pdf(file="badTree.pdf")</p>
<p>&gt; plot(clust)</p>
<p>&gt; dev.off()</p>
<p><a href="http://www.bio-info-trainee.com/wp-content/uploads/2015/05/Biostrings包简介2345.png"><img class="alignnone size-full wp-image-766" src="http://www.bio-info-trainee.com/wp-content/uploads/2015/05/Biostrings包简介2345.png" alt="Biostrings包简介2345" width="554" height="871" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.bio-info-trainee.com/764.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
