<?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>小生这厢有礼了(BioFaceBook Personal Blog) &#187; Linux相关</title>
	<atom:link href="https://www.biofacebook.com/?cat=9&#038;feed=rss2" rel="self" type="application/rss+xml" />
	<link>https://www.biofacebook.com</link>
	<description>记录生物信息学点滴足迹（NGS,Genome,Meta,Linux)</description>
	<lastBuildDate>Sun, 23 Aug 2020 03:28:53 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=4.1.41</generator>
	<item>
		<title>肠型分析学习</title>
		<link>https://www.biofacebook.com/?p=1521</link>
		<comments>https://www.biofacebook.com/?p=1521#comments</comments>
		<pubDate>Wed, 01 Jul 2020 05:24:02 +0000</pubDate>
		<dc:creator><![CDATA[szypanther]]></dc:creator>
				<category><![CDATA[Linux相关]]></category>
		<category><![CDATA[生物信息]]></category>

		<guid isPermaLink="false">http://www.biofacebook.com/?p=1521</guid>
		<description><![CDATA[<p>肠型，Enterotype，是2011年在这篇文章中提出的，即将过去的2018年又有20多们肠道微生物的大佬对肠型的概念进行了回顾和确认。一直比较好奇怎样来用代码分析肠型，今天找到了这个教程，放在这：</p> <p>这是那篇原始的文章：Arumugam, M., Raes, J., et al. (2011) Enterotypes of the human gut microbiome, Nature,doi://10.1038/nature09944 在谷歌上一搜，作者竟然做了个分析肠型的教程在这，学习一下：http://enterotyping.embl.de/enterotypes.html 这是2018年大佬们的共识文章：这是国人翻译的这篇文章，http://blog.sciencenet.cn/blog-3334560-1096828.html 当然，如果你只需要获得自己的结果或者自己课题的结果，不需要跑代码的，有最新的网页版分型，更好用，网址也放在这，同样也是上面翻译的那篇文章里提到的网址：http://enterotypes.org/ 只需要把菌属的含量比例文件上就能很快得到结果。</p> <p>下面我就边学习边做来尝试着来个分析，并把代码放在这里备忘。其实作者已经整理好了代码，我学习一下，争取实现对手上的数据进行分析。</p> 首先下载测试数据， wget http://enterotyping.embl.de/MetaHIT_SangerSamples.genus.txt wget http://enterotyping.embl.de/enterotypes_tutorial.sanger.R 跑跑示例数据，排排错 <p>我表示对R语言还只是一知半解的状态，所以，先跑下，然后能用上自己的数据， 当个工具用就暂知足啦。我是黑苹果10.11的系统，运行这个软件提示少了Xquartz，于是装了个，windows和linux应该不需要。原代码中还提示『没有&#8221;s.class&#8221;这个函数』，百度了一下发现有个老兄的新浪博客说了是这个包，于是加了句library(ade4)就ok了。 Xquartz的下载地址Mac 10.6+：https://dl.bintray.com/xquartz/downloads/XQuartz-2.7.11.dmg</p> <p>&#160;</p> #Uncomment next two lines if R packages are already installed #install.packages("cluster") #install.packages("clusterSim") library(cluster) library(clusterSim) #BiocManager::install("genefilter") library(ade4)#Download the example data and set the working directory [...]]]></description>
				<content:encoded><![CDATA[<p>肠型，Enterotype，是2011年在这篇文章中提出的，即将过去的2018年又有20多们肠道微生物的大佬对肠型的概念进行了回顾和确认。一直比较好奇怎样来用代码分析肠型，今天找到了这个教程，放在这：</p>
<blockquote><p><em>这是那篇原始的文章：Arumugam, M., Raes, J., et al. (2011) Enterotypes of the human gut microbiome, Nature,doi://10.1038/nature09944 在谷歌上一搜，作者竟然做了个分析肠型的教程在这，学习一下：http://enterotyping.embl.de/enterotypes.html 这是2018年大佬们的共识文章：这是国人翻译的这篇文章，http://blog.sciencenet.cn/blog-3334560-1096828.html 当然，如果你只需要获得自己的结果或者自己课题的结果，不需要跑代码的，有最新的网页版分型，更好用，网址也放在这，同样也是上面翻译的那篇文章里提到的网址：http://enterotypes.org/ 只需要把菌属的含量比例文件上就能很快得到结果。</em></p></blockquote>
<p>下面我就边学习边做来尝试着来个分析，并把代码放在这里备忘。其实作者已经整理好了代码，我学习一下，争取实现对手上的数据进行分析。</p>
<h2 id="%E9%A6%96%E5%85%88%E4%B8%8B%E8%BD%BD%E6%B5%8B%E8%AF%95%E6%95%B0%E6%8D%AE%EF%BC%8C"><strong>首先下载测试数据，</strong></h2>
<pre class="prism-token token  language-javascript">wget http<span class="token punctuation">:</span><span class="token operator">/</span><span class="token operator">/</span>enterotyping<span class="token punctuation">.</span>embl<span class="token punctuation">.</span>de<span class="token operator">/</span>MetaHIT_SangerSamples<span class="token punctuation">.</span>genus<span class="token punctuation">.</span>txt
wget http<span class="token punctuation">:</span><span class="token operator">/</span><span class="token operator">/</span>enterotyping<span class="token punctuation">.</span>embl<span class="token punctuation">.</span>de<span class="token operator">/</span>enterotypes_tutorial<span class="token punctuation">.</span>sanger<span class="token punctuation">.</span>R</pre>
<h2 id="%E8%B7%91%E8%B7%91%E7%A4%BA%E4%BE%8B%E6%95%B0%E6%8D%AE%EF%BC%8C%E6%8E%92%E6%8E%92%E9%94%99"><strong>跑跑示例数据，排排错</strong></h2>
<p>我表示对R语言还只是一知半解的状态，所以，先跑下，然后能用上自己的数据， 当个工具用就暂知足啦。我是黑苹果10.11的系统，运行这个软件提示少了Xquartz，于是装了个，windows和linux应该不需要。原代码中还提示『没有&#8221;s.class&#8221;这个函数』，百度了一下发现有个老兄的新浪博客说了是这个包，于是加了句<code>library(ade4)</code>就ok了。 Xquartz的下载地址Mac 10.6+：https://dl.bintray.com/xquartz/downloads/XQuartz-2.7.11.dmg</p>
<p>&nbsp;</p>
<pre class="prism-token token  language-javascript">#Uncomment next two lines <span class="token keyword">if</span> R packages are already installed
#install<span class="token punctuation">.</span><span class="token function">packages</span><span class="token punctuation">(</span><span class="token string">"cluster"</span><span class="token punctuation">)</span>
#install<span class="token punctuation">.</span><span class="token function">packages</span><span class="token punctuation">(</span><span class="token string">"clusterSim"</span><span class="token punctuation">)</span>
<span class="token function">library</span><span class="token punctuation">(</span>cluster<span class="token punctuation">)</span>
<span class="token function">library</span><span class="token punctuation">(</span>clusterSim<span class="token punctuation">)</span>
#BiocManager<span class="token punctuation">:</span><span class="token punctuation">:</span><span class="token function">install</span><span class="token punctuation">(</span><span class="token string">"genefilter"</span><span class="token punctuation">)</span>
<span class="token function">library</span><span class="token punctuation">(</span>ade4<span class="token punctuation">)</span>#Download the example data and <span class="token keyword">set</span> the working directory
#<span class="token function">setwd</span><span class="token punctuation">(</span><span class="token string">'&lt;path_to_working_directory&gt;'</span><span class="token punctuation">)</span>
data<span class="token operator">=</span>read<span class="token punctuation">.</span><span class="token function">table</span><span class="token punctuation">(</span><span class="token string">"../MetaHIT_SangerSamples.genus.txt"</span><span class="token punctuation">,</span> header<span class="token operator">=</span>T<span class="token punctuation">,</span> row<span class="token punctuation">.</span>names<span class="token operator">=</span><span class="token number">1</span><span class="token punctuation">,</span> dec<span class="token operator">=</span><span class="token string">"."</span><span class="token punctuation">,</span> sep<span class="token operator">=</span><span class="token string">"\t"</span><span class="token punctuation">)</span>
data<span class="token operator">=</span>data<span class="token punctuation">[</span><span class="token operator">-</span><span class="token number">1</span><span class="token punctuation">,</span><span class="token punctuation">]</span>dist<span class="token punctuation">.</span>JSD <span class="token operator">&lt;</span><span class="token operator">-</span> <span class="token keyword">function</span><span class="token punctuation">(</span>inMatrix<span class="token punctuation">,</span> pseudocount<span class="token operator">=</span><span class="token number">0.000001</span><span class="token punctuation">,</span> <span class="token operator">...</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
 KLD <span class="token operator">&lt;</span><span class="token operator">-</span> <span class="token keyword">function</span><span class="token punctuation">(</span>x<span class="token punctuation">,</span>y<span class="token punctuation">)</span> <span class="token function">sum</span><span class="token punctuation">(</span>x <span class="token operator">*</span><span class="token function">log</span><span class="token punctuation">(</span>x<span class="token operator">/</span>y<span class="token punctuation">)</span><span class="token punctuation">)</span>
 JSD<span class="token operator">&lt;</span><span class="token operator">-</span> <span class="token keyword">function</span><span class="token punctuation">(</span>x<span class="token punctuation">,</span>y<span class="token punctuation">)</span> <span class="token function">sqrt</span><span class="token punctuation">(</span><span class="token number">0.5</span> <span class="token operator">*</span> <span class="token function">KLD</span><span class="token punctuation">(</span>x<span class="token punctuation">,</span> <span class="token punctuation">(</span>x<span class="token operator">+</span>y<span class="token punctuation">)</span><span class="token operator">/</span><span class="token number">2</span><span class="token punctuation">)</span> <span class="token operator">+</span> <span class="token number">0.5</span> <span class="token operator">*</span> <span class="token function">KLD</span><span class="token punctuation">(</span>y<span class="token punctuation">,</span> <span class="token punctuation">(</span>x<span class="token operator">+</span>y<span class="token punctuation">)</span><span class="token operator">/</span><span class="token number">2</span><span class="token punctuation">)</span><span class="token punctuation">)</span>
 matrixColSize <span class="token operator">&lt;</span><span class="token operator">-</span> <span class="token function">length</span><span class="token punctuation">(</span><span class="token function">colnames</span><span class="token punctuation">(</span>inMatrix<span class="token punctuation">)</span><span class="token punctuation">)</span>
 matrixRowSize <span class="token operator">&lt;</span><span class="token operator">-</span> <span class="token function">length</span><span class="token punctuation">(</span><span class="token function">rownames</span><span class="token punctuation">(</span>inMatrix<span class="token punctuation">)</span><span class="token punctuation">)</span>
 colnames <span class="token operator">&lt;</span><span class="token operator">-</span> <span class="token function">colnames</span><span class="token punctuation">(</span>inMatrix<span class="token punctuation">)</span>
 resultsMatrix <span class="token operator">&lt;</span><span class="token operator">-</span> <span class="token function">matrix</span><span class="token punctuation">(</span><span class="token number">0</span><span class="token punctuation">,</span> matrixColSize<span class="token punctuation">,</span> matrixColSize<span class="token punctuation">)</span> inMatrix <span class="token operator">=</span> <span class="token function">apply</span><span class="token punctuation">(</span>inMatrix<span class="token punctuation">,</span><span class="token number">1</span><span class="token punctuation">:</span><span class="token number">2</span><span class="token punctuation">,</span><span class="token keyword">function</span><span class="token punctuation">(</span>x<span class="token punctuation">)</span> <span class="token function">ifelse</span> <span class="token punctuation">(</span>x<span class="token operator">==</span><span class="token number">0</span><span class="token punctuation">,</span>pseudocount<span class="token punctuation">,</span>x<span class="token punctuation">)</span><span class="token punctuation">)</span> <span class="token keyword">for</span><span class="token punctuation">(</span>i <span class="token keyword">in</span> <span class="token number">1</span><span class="token punctuation">:</span>matrixColSize<span class="token punctuation">)</span> <span class="token punctuation">{</span>
   <span class="token keyword">for</span><span class="token punctuation">(</span>j <span class="token keyword">in</span> <span class="token number">1</span><span class="token punctuation">:</span>matrixColSize<span class="token punctuation">)</span> <span class="token punctuation">{</span>
     resultsMatrix<span class="token punctuation">[</span>i<span class="token punctuation">,</span>j<span class="token punctuation">]</span><span class="token operator">=</span><span class="token function">JSD</span><span class="token punctuation">(</span><span class="token keyword">as</span><span class="token punctuation">.</span><span class="token function">vector</span><span class="token punctuation">(</span>inMatrix<span class="token punctuation">[</span><span class="token punctuation">,</span>i<span class="token punctuation">]</span><span class="token punctuation">)</span><span class="token punctuation">,</span>
                            <span class="token keyword">as</span><span class="token punctuation">.</span><span class="token function">vector</span><span class="token punctuation">(</span>inMatrix<span class="token punctuation">[</span><span class="token punctuation">,</span>j<span class="token punctuation">]</span><span class="token punctuation">)</span><span class="token punctuation">)</span>
   <span class="token punctuation">}</span>
 <span class="token punctuation">}</span>
 colnames <span class="token operator">-</span><span class="token operator">&gt;</span> <span class="token function">colnames</span><span class="token punctuation">(</span>resultsMatrix<span class="token punctuation">)</span> <span class="token operator">-</span><span class="token operator">&gt;</span> <span class="token function">rownames</span><span class="token punctuation">(</span>resultsMatrix<span class="token punctuation">)</span>
 <span class="token keyword">as</span><span class="token punctuation">.</span><span class="token function">dist</span><span class="token punctuation">(</span>resultsMatrix<span class="token punctuation">)</span><span class="token operator">-</span><span class="token operator">&gt;</span>resultsMatrix
 <span class="token function">attr</span><span class="token punctuation">(</span>resultsMatrix<span class="token punctuation">,</span> <span class="token string">"method"</span><span class="token punctuation">)</span> <span class="token operator">&lt;</span><span class="token operator">-</span> <span class="token string">"dist"</span>
 <span class="token keyword">return</span><span class="token punctuation">(</span>resultsMatrix<span class="token punctuation">)</span>
<span class="token punctuation">}</span>data<span class="token punctuation">.</span>dist<span class="token operator">=</span>dist<span class="token punctuation">.</span><span class="token function">JSD</span><span class="token punctuation">(</span>data<span class="token punctuation">)</span>pam<span class="token punctuation">.</span><span class="token function-variable function">clustering</span><span class="token operator">=</span><span class="token keyword">function</span><span class="token punctuation">(</span>x<span class="token punctuation">,</span>k<span class="token punctuation">)</span> <span class="token punctuation">{</span> # x is a distance matrix and k the number <span class="token keyword">of</span> clusters
 <span class="token function">require</span><span class="token punctuation">(</span>cluster<span class="token punctuation">)</span>
 cluster <span class="token operator">=</span> <span class="token keyword">as</span><span class="token punctuation">.</span><span class="token function">vector</span><span class="token punctuation">(</span><span class="token function">pam</span><span class="token punctuation">(</span><span class="token keyword">as</span><span class="token punctuation">.</span><span class="token function">dist</span><span class="token punctuation">(</span>x<span class="token punctuation">)</span><span class="token punctuation">,</span> k<span class="token punctuation">,</span> diss<span class="token operator">=</span>TRUE<span class="token punctuation">)</span>$clustering<span class="token punctuation">)</span>
 <span class="token keyword">return</span><span class="token punctuation">(</span>cluster<span class="token punctuation">)</span>
<span class="token punctuation">}</span>data<span class="token punctuation">.</span>cluster<span class="token operator">=</span>pam<span class="token punctuation">.</span><span class="token function">clustering</span><span class="token punctuation">(</span>data<span class="token punctuation">.</span>dist<span class="token punctuation">,</span> k<span class="token operator">=</span><span class="token number">3</span><span class="token punctuation">)</span><span class="token function">require</span><span class="token punctuation">(</span>clusterSim<span class="token punctuation">)</span>
nclusters <span class="token operator">=</span> index<span class="token punctuation">.</span><span class="token function">G1</span><span class="token punctuation">(</span><span class="token function">t</span><span class="token punctuation">(</span>data<span class="token punctuation">)</span><span class="token punctuation">,</span> data<span class="token punctuation">.</span>cluster<span class="token punctuation">,</span> d <span class="token operator">=</span> data<span class="token punctuation">.</span>dist<span class="token punctuation">,</span> centrotypes <span class="token operator">=</span> <span class="token string">"medoids"</span><span class="token punctuation">)</span>nclusters<span class="token operator">=</span><span class="token function">NULLfor</span> <span class="token punctuation">(</span>k <span class="token keyword">in</span> <span class="token number">1</span><span class="token punctuation">:</span><span class="token number">20</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
 <span class="token keyword">if</span> <span class="token punctuation">(</span>k<span class="token operator">==</span><span class="token number">1</span><span class="token punctuation">)</span> <span class="token punctuation">{</span>
   nclusters<span class="token punctuation">[</span>k<span class="token punctuation">]</span><span class="token operator">=</span>NA
 <span class="token punctuation">}</span> <span class="token keyword">else</span> <span class="token punctuation">{</span>
   data<span class="token punctuation">.</span>cluster_temp<span class="token operator">=</span>pam<span class="token punctuation">.</span><span class="token function">clustering</span><span class="token punctuation">(</span>data<span class="token punctuation">.</span>dist<span class="token punctuation">,</span> k<span class="token punctuation">)</span>
   nclusters<span class="token punctuation">[</span>k<span class="token punctuation">]</span><span class="token operator">=</span>index<span class="token punctuation">.</span><span class="token function">G1</span><span class="token punctuation">(</span><span class="token function">t</span><span class="token punctuation">(</span>data<span class="token punctuation">)</span><span class="token punctuation">,</span>data<span class="token punctuation">.</span>cluster_temp<span class="token punctuation">,</span>  d <span class="token operator">=</span> data<span class="token punctuation">.</span>dist<span class="token punctuation">,</span>
                         centrotypes <span class="token operator">=</span> <span class="token string">"medoids"</span><span class="token punctuation">)</span>
 <span class="token punctuation">}</span>
<span class="token punctuation">}</span><span class="token function">plot</span><span class="token punctuation">(</span>nclusters<span class="token punctuation">,</span> type<span class="token operator">=</span><span class="token string">"h"</span><span class="token punctuation">,</span> xlab<span class="token operator">=</span><span class="token string">"k clusters"</span><span class="token punctuation">,</span> ylab<span class="token operator">=</span><span class="token string">"CH index"</span><span class="token punctuation">,</span>main<span class="token operator">=</span><span class="token string">"Optimal number of clusters"</span><span class="token punctuation">)</span>obs<span class="token punctuation">.</span>silhouette<span class="token operator">=</span><span class="token function">mean</span><span class="token punctuation">(</span><span class="token function">silhouette</span><span class="token punctuation">(</span>data<span class="token punctuation">.</span>cluster<span class="token punctuation">,</span> data<span class="token punctuation">.</span>dist<span class="token punctuation">)</span><span class="token punctuation">[</span><span class="token punctuation">,</span><span class="token number">3</span><span class="token punctuation">]</span><span class="token punctuation">)</span>
<span class="token function">cat</span><span class="token punctuation">(</span>obs<span class="token punctuation">.</span>silhouette<span class="token punctuation">)</span> #<span class="token number">0.1899451</span>#data<span class="token operator">=</span>noise<span class="token punctuation">.</span><span class="token function">removal</span><span class="token punctuation">(</span>data<span class="token punctuation">,</span> percent<span class="token operator">=</span><span class="token number">0.01</span><span class="token punctuation">)</span>## plot <span class="token number">1</span>
obs<span class="token punctuation">.</span>pca<span class="token operator">=</span>dudi<span class="token punctuation">.</span><span class="token function">pca</span><span class="token punctuation">(</span>data<span class="token punctuation">.</span><span class="token function">frame</span><span class="token punctuation">(</span><span class="token function">t</span><span class="token punctuation">(</span>data<span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">,</span> scannf<span class="token operator">=</span>F<span class="token punctuation">,</span> nf<span class="token operator">=</span><span class="token number">10</span><span class="token punctuation">)</span>
obs<span class="token punctuation">.</span>bet<span class="token operator">=</span><span class="token function">bca</span><span class="token punctuation">(</span>obs<span class="token punctuation">.</span>pca<span class="token punctuation">,</span> fac<span class="token operator">=</span><span class="token keyword">as</span><span class="token punctuation">.</span><span class="token function">factor</span><span class="token punctuation">(</span>data<span class="token punctuation">.</span>cluster<span class="token punctuation">)</span><span class="token punctuation">,</span> scannf<span class="token operator">=</span>F<span class="token punctuation">,</span> nf<span class="token operator">=</span>k<span class="token number">-1</span><span class="token punctuation">)</span>
dev<span class="token punctuation">.</span><span class="token keyword">new</span><span class="token punctuation">(</span><span class="token punctuation">)</span>
s<span class="token punctuation">.</span><span class="token keyword">class</span><span class="token punctuation">(</span>obs<span class="token punctuation">.</span>bet$ls<span class="token punctuation">,</span> fac<span class="token operator">=</span><span class="token keyword">as</span><span class="token punctuation">.</span><span class="token function">factor</span><span class="token punctuation">(</span>data<span class="token punctuation">.</span>cluster<span class="token punctuation">)</span><span class="token punctuation">,</span> grid<span class="token operator">=</span>F<span class="token punctuation">,</span>sub<span class="token operator">=</span><span class="token string">"Between-class analysis"</span><span class="token punctuation">,</span> col<span class="token operator">=</span><span class="token function">c</span><span class="token punctuation">(</span><span class="token number">3</span><span class="token punctuation">,</span><span class="token number">2</span><span class="token punctuation">,</span><span class="token number">4</span><span class="token punctuation">)</span><span class="token punctuation">)</span>#plot <span class="token number">2</span>
obs<span class="token punctuation">.</span>pcoa<span class="token operator">=</span>dudi<span class="token punctuation">.</span><span class="token function">pco</span><span class="token punctuation">(</span>data<span class="token punctuation">.</span>dist<span class="token punctuation">,</span> scannf<span class="token operator">=</span>F<span class="token punctuation">,</span> nf<span class="token operator">=</span><span class="token number">3</span><span class="token punctuation">)</span>
dev<span class="token punctuation">.</span><span class="token keyword">new</span><span class="token punctuation">(</span><span class="token punctuation">)</span>
s<span class="token punctuation">.</span><span class="token keyword">class</span><span class="token punctuation">(</span>obs<span class="token punctuation">.</span>pcoa$li<span class="token punctuation">,</span> fac<span class="token operator">=</span><span class="token keyword">as</span><span class="token punctuation">.</span><span class="token function">factor</span><span class="token punctuation">(</span>data<span class="token punctuation">.</span>cluster<span class="token punctuation">)</span><span class="token punctuation">,</span> grid<span class="token operator">=</span>F<span class="token punctuation">,</span>sub<span class="token operator">=</span><span class="token string">"Principal coordiante analysis"</span><span class="token punctuation">,</span> col<span class="token operator">=</span><span class="token function">c</span><span class="token punctuation">(</span><span class="token number">3</span><span class="token punctuation">,</span><span class="token number">2</span><span class="token punctuation">,</span><span class="token number">4</span><span class="token punctuation">)</span><span class="token punctuation">)</span></pre>
<h2 id="%E4%B8%8A%E5%9B%BE%EF%BC%8C%E7%A8%8D%E5%BE%AE%E8%B0%83%E6%95%B4%E4%B8%8B"><strong>上图，稍微调整下</strong></h2>
<p><code>, col=c(3,2,4)</code>这个代码是给三个聚类上不同的颜色，还没搞清楚怎么给画的圈上色来实现理好看的效果，相信对于熟悉R语言的同学是小菜一碟。<code>, cell=0, cstar=0</code>是不显示圈和边线，只显示散点。 不加这两个参数，只用上面的代码，图如下：</p>
<figure>
<div class="image-block"><img class="" src="https://ask.qcloudimg.com/http-save/yehe-1075469/j1jqq1y6uv.png?imageView2/2/w/1620" alt="" /></div>
</figure>
<p>加上两个参数的图片，就和教程里的最后面的两张图一样：</p>
<figure>
<div class="image-block"><img class="" src="https://ask.qcloudimg.com/http-save/yehe-1075469/g6fnw7cmwb.png?imageView2/2/w/1620" alt="" /></div>
</figure>
]]></content:encoded>
			<wfw:commentRss>https://www.biofacebook.com/?feed=rss2&#038;p=1521</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>conda 报错　Solving environment: failed</title>
		<link>https://www.biofacebook.com/?p=1509</link>
		<comments>https://www.biofacebook.com/?p=1509#comments</comments>
		<pubDate>Fri, 22 May 2020 03:07:44 +0000</pubDate>
		<dc:creator><![CDATA[szypanther]]></dc:creator>
				<category><![CDATA[Linux相关]]></category>

		<guid isPermaLink="false">http://www.biofacebook.com/?p=1509</guid>
		<description><![CDATA[<p>现在说说我的解决思路： 1.根据错误内容，安装失败的原因应该是这个网址 https://repo.anaconda.com/pkgs/main/noarch/repodata.json.bz2 请求失败。 2.所以我尝试用</p> <p>wget https://repo.anaconda.com/pkgs/main/noarch/repodata.json.bz2 1 手动下载这个包，结果出现以下错误。</p> <p>-2018-12-12 18:29:18&#8211; https://repo.anaconda.com/pkgs/main/noarch/repodata.json.bz2 Connecting to 127.0.0.1:33473&#8230; failed: Connection refused.</p> <p>1 2 3 那么应该寻找失败的原因，127.0.0.1表示的是本机，应该不会有什么问题，那么会不会是因为端口33473被占用的原因。 3.用netstat -ntpl查看本地端口的使用情况</p> <p>netstat -ntpl (Not all processes could be identified, non-owned process info will not be shown, you would have to be root to see it all.) Active Internet connections (only servers) Proto [...]]]></description>
				<content:encoded><![CDATA[<p>现在说说我的解决思路：<br />
1.根据错误内容，安装失败的原因应该是这个网址 https://repo.anaconda.com/pkgs/main/noarch/repodata.json.bz2 请求失败。<br />
2.所以我尝试用</p>
<p>wget https://repo.anaconda.com/pkgs/main/noarch/repodata.json.bz2<br />
1<br />
手动下载这个包，结果出现以下错误。</p>
<p>-2018-12-12 18:29:18&#8211; https://repo.anaconda.com/pkgs/main/noarch/repodata.json.bz2<br />
Connecting to 127.0.0.1:33473&#8230; failed: Connection refused.</p>
<p>1<br />
2<br />
3<br />
那么应该寻找失败的原因，127.0.0.1表示的是本机，应该不会有什么问题，那么会不会是因为端口33473被占用的原因。<br />
3.用netstat -ntpl查看本地端口的使用情况</p>
<p>netstat -ntpl<br />
(Not all processes could be identified, non-owned process info<br />
will not be shown, you would have to be root to see it all.)<br />
Active Internet connections (only servers)<br />
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name<br />
tcp 0 0 127.0.0.1:57837 0.0.0.0:* LISTEN 2165/python<br />
tcp 0 0 127.0.0.1:37138 0.0.0.0:* LISTEN 15851/python<br />
tcp 0 0 127.0.0.1:45331 0.0.0.0:* LISTEN 2050/python<br />
tcp 0 0 127.0.0.1:37492 0.0.0.0:* LISTEN 2165/python<br />
tcp 0 0 127.0.1.1:53 0.0.0.0:* LISTEN &#8211;<br />
tcp 0 0 127.0.0.1:53526 0.0.0.0:* LISTEN 15851/python<br />
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN &#8211;<br />
tcp 0 0 127.0.0.1:45527 0.0.0.0:* LISTEN 2165/python<br />
tcp 0 0 127.0.0.1:45655 0.0.0.0:* LISTEN 2165/python<br />
tcp 0 0 127.0.0.1:36887 0.0.0.0:* LISTEN 2050/python<br />
tcp 0 0 127.0.0.1:8888 0.0.0.0:* LISTEN 30648/python<br />
tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN &#8211;<br />
tcp 0 0 127.0.0.1:43001 0.0.0.0:* LISTEN 15851/python<br />
tcp 0 0 127.0.0.1:59033 0.0.0.0:* LISTEN 2050/python<br />
tcp 0 0 127.0.0.1:34684 0.0.0.0:* LISTEN 2165/python<br />
tcp 0 0 127.0.0.1:43869 0.0.0.0:* LISTEN 2165/python<br />
tcp 0 0 127.0.0.1:45631 0.0.0.0:* LISTEN 2050/python<br />
tcp 0 0 127.0.0.1:58368 0.0.0.0:* LISTEN 15851/python<br />
tcp 0 0 127.0.0.1:34498 0.0.0.0:* LISTEN 2050/python<br />
tcp 0 0 127.0.0.1:42147 0.0.0.0:* LISTEN 15851/python<br />
tcp 0 0 127.0.0.1:34211 0.0.0.0:* LISTEN 4448/pgAdmin4<br />
tcp 0 0 127.0.0.1:51367 0.0.0.0:* LISTEN 2050/python<br />
tcp 0 0 127.0.0.1:51338 0.0.0.0:* LISTEN 15851/python<br />
tcp6 0 0 127.0.0.1:8079 :::* LISTEN 28374/java<br />
tcp6 0 0 :::8080 :::* LISTEN 28374/java<br />
tcp6 0 0 ::1:631 :::* LISTEN &#8211;<br />
1<br />
2<br />
3<br />
4<br />
5<br />
6<br />
7<br />
8<br />
9<br />
10<br />
11<br />
12<br />
13<br />
14<br />
15<br />
16<br />
17<br />
18<br />
19<br />
20<br />
21<br />
22<br />
23<br />
24<br />
25<br />
26<br />
27<br />
28<br />
29<br />
30<br />
31<br />
发现33473并没有被服务占用。<br />
4.查看代理服务</p>
<p>export | grep -i proxy<br />
HTTPS_PROXY=http://127.0.0.1:33473/<br />
HTTP_PROXY=http://127.0.0.1:33473/<br />
NO_PROXY=localhost,127.0.0.0/8,::1<br />
http_proxy=http://127.0.0.1:33473/<br />
https_proxy=http://127.0.0.1:33473/<br />
no_proxy=localhost,127.0.0.0/8,::1<br />
1<br />
2<br />
3<br />
4<br />
5<br />
6<br />
7<br />
终于找到原因了，33473端口被代理服务占用了，所以接下来要做的就是关闭这些代理。<br />
5. 使用unset关闭所有占用33474端口的代理<br />
比如unset HTTPS_PROXY<br />
注意，代理名称区分大小写.</p>
<p>——————————————————————————<br />
接下来，install终于没问题了，<br />
————————————————</p>
<p>原文链接：https://blog.csdn.net/xtfge0915/java/article/details/84977765</p>
]]></content:encoded>
			<wfw:commentRss>https://www.biofacebook.com/?feed=rss2&#038;p=1509</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ssh, scp and rsync</title>
		<link>https://www.biofacebook.com/?p=1451</link>
		<comments>https://www.biofacebook.com/?p=1451#comments</comments>
		<pubDate>Sun, 23 Feb 2020 08:38:06 +0000</pubDate>
		<dc:creator><![CDATA[szypanther]]></dc:creator>
				<category><![CDATA[Linux相关]]></category>
		<category><![CDATA[兴趣杂项]]></category>

		<guid isPermaLink="false">http://www.biofacebook.com/?p=1451</guid>
		<description><![CDATA[<p>[Admin.DESKTOP-7JT504C] ➤ rsync -P &#8211;rsh=ssh /drives/d/Kraken_12.tar.gz cityu_jhli_1@172.16.22.11:/BIGDATA1/cityu_jhli_1/mhyleung/database/findfungi Warning: Permanently added &#8216;172.16.22.11&#8217; (RSA) to the list of known hosts.</p> <p>rsync -P -avz -e &#8220;ssh -p5566 -i /drives/C/Users/Admin/Desktop/cityu_jhli_1.id&#8221; /drives/d/Kraken_12.tar.gz cityu_jhli_1@172.16.22.11:/BIGDATA1/cityu_jhli_1/mhyleung/database/findfungi</p> <p>[Admin.DESKTOP-7JT504C] ➤ scp -P 5566 -i /drives/C/Users/Admin/Desktop/cityu_jhli_1.id -r /drives/d/Kraken_12.tar.gz cityu_jhli_1@172.16.22.11:/BIGDATA1/cityu_jhli_1/mhyleung/database/findfungi</p> <p>&#160;</p> <p>ssh -p5566 -i /drives/C/Users/Admin/Desktop/cityu_jhli_1.id cityu_jhli_1@172.16.22.11</p> ]]></description>
				<content:encoded><![CDATA[<p>[Admin.DESKTOP-7JT504C] ➤ rsync -P &#8211;rsh=ssh /drives/d/Kraken_12.tar.gz cityu_jhli_1@172.16.22.11:/BIGDATA1/cityu_jhli_1/mhyleung/database/findfungi Warning: Permanently added &#8216;172.16.22.11&#8217; (RSA) to the list of known hosts.</p>
<p>rsync -P -avz -e &#8220;ssh -p5566 -i /drives/C/Users/Admin/Desktop/cityu_jhli_1.id&#8221; /drives/d/Kraken_12.tar.gz cityu_jhli_1@172.16.22.11:/BIGDATA1/cityu_jhli_1/mhyleung/database/findfungi</p>
<p>[Admin.DESKTOP-7JT504C] ➤ scp -P 5566 -i /drives/C/Users/Admin/Desktop/cityu_jhli_1.id -r /drives/d/Kraken_12.tar.gz cityu_jhli_1@172.16.22.11:/BIGDATA1/cityu_jhli_1/mhyleung/database/findfungi</p>
<p>&nbsp;</p>
<p>ssh -p5566 -i /drives/C/Users/Admin/Desktop/cityu_jhli_1.id   cityu_jhli_1@172.16.22.11</p>
]]></content:encoded>
			<wfw:commentRss>https://www.biofacebook.com/?feed=rss2&#038;p=1451</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>v2ray</title>
		<link>https://www.biofacebook.com/?p=1446</link>
		<comments>https://www.biofacebook.com/?p=1446#comments</comments>
		<pubDate>Fri, 21 Feb 2020 09:42:29 +0000</pubDate>
		<dc:creator><![CDATA[szypanther]]></dc:creator>
				<category><![CDATA[docker]]></category>
		<category><![CDATA[Linux相关]]></category>
		<category><![CDATA[生物信息]]></category>

		<guid isPermaLink="false">http://www.biofacebook.com/?p=1446</guid>
		<description><![CDATA[<p>https://github.com/Jrohy/multi-v2ray</p> <p>&#160;</p> Docker运行 <p>默认创建mkcp + 随机一种伪装头配置文件：</p> docker run -d --name v2ray --privileged --restart always --network host jrohy/v2ray <p>自定义v2ray配置文件:</p> docker run -d --name v2ray --privileged -v /path/config.json:/etc/v2ray/config.json --restart always --network host jrohy/v2ray <p>查看v2ray配置:</p> docker exec v2ray bash -c "v2ray info" <p>warning: 如果用centos，需要先关闭防火墙</p> systemctl stop firewalld.service systemctl disable firewalld.service ]]></description>
				<content:encoded><![CDATA[<p>https://github.com/Jrohy/multi-v2ray</p>
<p>&nbsp;</p>
<h2>Docker运行</h2>
<p>默认创建mkcp + 随机一种伪装头配置文件：</p>
<pre><code>docker run -d --name v2ray --privileged --restart always --network host jrohy/v2ray
</code></pre>
<p>自定义v2ray配置文件:</p>
<pre><code>docker run -d --name v2ray --privileged -v /path/config.json:/etc/v2ray/config.json --restart always --network host jrohy/v2ray
</code></pre>
<p>查看v2ray配置:</p>
<pre><code>docker exec v2ray bash -c "v2ray info"
</code></pre>
<p><strong>warning</strong>: 如果用centos，需要先关闭防火墙</p>
<pre><code>systemctl stop firewalld.service
systemctl disable firewalld.service
</code></pre>
]]></content:encoded>
			<wfw:commentRss>https://www.biofacebook.com/?feed=rss2&#038;p=1446</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Multivariate analyses in R (PERMANOVA )</title>
		<link>https://www.biofacebook.com/?p=1420</link>
		<comments>https://www.biofacebook.com/?p=1420#comments</comments>
		<pubDate>Sat, 07 Dec 2019 06:08:55 +0000</pubDate>
		<dc:creator><![CDATA[szypanther]]></dc:creator>
				<category><![CDATA[Linux相关]]></category>
		<category><![CDATA[统计学习]]></category>

		<guid isPermaLink="false">http://www.biofacebook.com/?p=1420</guid>
		<description><![CDATA[<p>https://rpubs.com/collnell/manova</p> Multivariate analyses in R <p>By C Nell</p> Types of questions <p>Do groups differ in composition? Does community structure vary among regions or over time? Do environmental variables explain community patterns? Which species are responsible for differences among groups?</p> <p>Multivariate analysis of ecological communities with vegan</p> install.packages('vegan') library(vegan) ##Community ecology: ordination, disversity &#38; dissimilarities Dataset [...]]]></description>
				<content:encoded><![CDATA[<p>https://rpubs.com/collnell/manova</p>
<div id="multivariate-analyses-in-r" class="section level2">
<h2>Multivariate analyses in R</h2>
<p>By C Nell</p>
<div id="types-of-questions" class="section level4">
<h4>Types of questions</h4>
<p>Do groups differ in composition?<br />
Does community structure vary among regions or over time?<br />
Do environmental variables explain community patterns?<br />
Which species are responsible for differences among groups?</p>
<p><a href="http://cc.oulu.fi/~jarioksa/opetus/metodi/vegantutor.pdf">Multivariate analysis of ecological communities with vegan</a></p>
<pre class="r"><code class="r"><span class="identifier">install.packages</span><span class="paren">(</span><span class="string">'vegan'</span><span class="paren">)</span>
<span class="keyword">library</span><span class="paren">(</span><span class="identifier">vegan</span><span class="paren">)</span> <span class="comment">##Community ecology: ordination, disversity &amp; dissimilarities</span></code></pre>
</div>
<div id="dataset" class="section level4">
<h4>Dataset</h4>
<p>Bird abundances from 32 different plots (rows), 12 of which have 1 tree species (DIVERSITY = M) and 20 with 4 tree species (DIVERSITY = P).<br />
Tree composition: there are a total of 6 possible tree species (treecomp), each signified with a letter A to F. Bird abundances are totalled according to their feeding guild (columns).</p>
<p>Get data from internet:</p>
<pre class="r"><code class="r"><span class="identifier">birds</span><span class="operator">&lt;-</span><span class="identifier">read.csv</span><span class="paren">(</span><span class="string">'https://raw.githubusercontent.com/collnell/lab-demo/master/bird_by_fg.csv'</span><span class="paren">)</span>
<span class="identifier">trees</span><span class="operator">&lt;-</span><span class="identifier">read.csv</span><span class="paren">(</span><span class="string">'https://raw.githubusercontent.com/collnell/lab-demo/master/tree_comp.csv'</span><span class="paren">)</span></code></pre>
<p>Or from your computer:</p>
<pre class="r"><code class="r"><span class="identifier">setwd</span><span class="paren">(</span><span class="string">"/Users/colleennell/Dropbox/Projects/Mexico/R"</span><span class="paren">)</span> <span class="comment">#change to data folder</span>
<span class="identifier">birds</span><span class="operator">&lt;-</span><span class="identifier">read.csv</span><span class="paren">(</span><span class="string">'bird_by_fg.csv'</span><span class="paren">)</span>
<span class="identifier">head</span><span class="paren">(</span><span class="identifier">birds</span><span class="paren">)</span></code></pre>
<pre><code>##   DIVERSITY PLOT CA FR GR HE IN NE OM
## 1         M    3  0  0  0  0  2  0  0
## 2         M    9  0  0  2  0  6  0  4
## 3         M   12  0  0  0  0  2  0  2
## 4         M   17  0  0  0  0  7  0  4
## 5         M   20  0  0  0  0  1  0  4
## 6         M   21  0  0  3  0 14  0  7</code></pre>
<pre class="r"><code class="r"><span class="identifier">trees</span><span class="operator">&lt;-</span><span class="identifier">read.csv</span><span class="paren">(</span><span class="string">'tree_comp.csv'</span><span class="paren">)</span>
<span class="identifier">head</span><span class="paren">(</span><span class="identifier">trees</span><span class="paren">)</span></code></pre>
<pre><code>##   PLOT comp A B C D E F row col
## 1    3    D 0 0 0 1 0 0   3   1
## 2    9    A 1 0 0 0 0 0   2   2
## 3   12    E 0 0 0 0 1 0   5   2
## 4   17    F 0 0 0 0 0 1   3   3
## 5   20    A 1 0 0 0 0 0   6   3
## 6   21    B 0 1 0 0 0 0   7   3</code></pre>
<p>Questions: Is <em>C. pentandara</em> (B) associated with variation in bird species composition? Does feeding guild composition differ between monoculture and polyculture plots?</p>
</div>
<div id="manova-multivariate-analysis-of-variance" class="section level3">
<h3>MANOVA (<strong>M</strong>ultivariate <strong>an</strong>alysis <strong>o</strong>f <strong>va</strong>riance)</h3>
<p>Parametric test for differences between independent groups for multiple continuous dependent variables. Like ANOVA for many response variables. Requires variables to be fewer than number of smaples.</p>
<p>Is <em>C. pentandara</em> (B) associated with variation in bird species composition? Or D &amp; F (both Fabaceae)?</p>
<pre class="r"><code class="r"><span class="identifier">bird.matrix</span><span class="operator">&lt;-</span><span class="identifier">as.matrix</span><span class="paren">(</span><span class="identifier">birds</span><span class="paren">[</span>,<span class="number">3</span><span class="operator">:</span><span class="number">9</span><span class="paren">]</span><span class="paren">)</span><span class="comment">##response variables in a sample x species matrix</span>
<span class="identifier">trees</span><span class="operator">$</span><span class="identifier">B</span><span class="operator">&lt;-</span><span class="identifier">as.factor</span><span class="paren">(</span><span class="identifier">trees</span><span class="operator">$</span><span class="identifier">B</span><span class="paren">)</span>

<span class="identifier">bird.manova</span><span class="operator">&lt;-</span><span class="identifier">manova</span><span class="paren">(</span><span class="identifier">bird.matrix</span><span class="operator">~</span><span class="identifier">as.factor</span><span class="paren">(</span><span class="identifier">B</span><span class="paren">)</span>, <span class="identifier">data</span><span class="operator">=</span><span class="identifier">trees</span><span class="paren">)</span> <span class="comment">##manova test</span>
<span class="identifier">summary</span><span class="paren">(</span><span class="identifier">bird.manova</span><span class="paren">)</span> </code></pre>
<pre><code>##              Df  Pillai approx F num Df den Df  Pr(&gt;F)  
## as.factor(B)  1 0.39147   2.2056      7     24 0.07027 .
## Residuals    30                                         
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1</code></pre>
<p>Show univariate results:</p>
<pre class="r"><code class="r"><span class="identifier">summary.aov</span><span class="paren">(</span><span class="identifier">bird.manova</span><span class="paren">)</span></code></pre>
<div id="assumptions-of-manova" class="section level4">
<h4>Assumptions of MANOVA</h4>
<ol>
<li>Normal distribution</li>
<li>Linearity</li>
<li>Homogeneity of variances</li>
<li>Homogeneity of covariances</li>
</ol>
<p><strong>Problem:</strong> Most ecological data is overdispersed, has many 0’s or rare species, unequal sample sizes.<br />
<strong>Solution:</strong> Dissimilarity coefficients, permutation tests</p>
</div>
</div>
<div id="permanova-permutational-multivariate-analysis-of-variance" class="section level3">
<h3>PERMANOVA: Permutational multivariate analysis of variance</h3>
<p>Non-paramentric, based on dissimilarities. Allows for partitioning of variability, similar to ANOVA, allowing for complex design (multiple factors, nested design, interactions, covariates). Uses permutation to compute F-statistic (pseudo-F).<br />
<a href="http://rosetta.ahmedmoustafa.io/permutation/">Interactive app demonstrating permutation tests</a></p>
<p>&nbsp;</p>
<p>Based on Legendre &amp; Anderson (1999, Ecological Monographs) and Anderson (2001, Austral Ecology).</p>
<p><strong>Null hypothesis: Groups do not differ in spread or positioni n multivaraite space.</strong></p>
<div id="transform-or-standardize-data" class="section level4">
<h4>1. Transform or standardize data</h4>
<p>Use square root or proportions to minimize influence of most abundant groups.</p>
<pre class="r"><code class="r"><span class="identifier">bird.mat</span><span class="operator">&lt;-</span><span class="identifier">sqrt</span><span class="paren">(</span><span class="identifier">bird.matrix</span><span class="paren">)</span><span class="comment">#square root transform</span>
<span class="comment">#bird.prop&lt;-decostand(bird.matrix, method="total")</span></code></pre>
</div>
<div id="calculate-ecological-resemblance" class="section level4">
<h4>2. Calculate ecological resemblance</h4>
<p>Quantify pairwise compositional dissimilarity between sites based on species occurances.<br />
&#8211; Bray-Curtis dissimilarity (abundance weighted)<br />
&#8211; Jaccard (presence/absence)<br />
&#8211; Gower’s (non-continuous variables)</p>
<p><strong>Dissimilarity: 0 = sites are indentical, 1 = sites do not share any species</strong></p>
<p>Create a dissimilarity matrix:</p>
<pre class="r"><code class="r"><span class="identifier">bird.dist</span><span class="operator">&lt;-</span><span class="identifier">vegdist</span><span class="paren">(</span><span class="identifier">bird.mat</span>, <span class="identifier">method</span><span class="operator">=</span><span class="string">'bray'</span><span class="paren">)</span></code></pre>
</div>
<div id="permanova" class="section level4">
<h4>3. perMANOVA</h4>
<p>Do monoculture and polyculture plots differ in feeding guild composition?</p>
<pre class="r"><code class="r"><span class="identifier">set.seed</span><span class="paren">(</span><span class="number">36</span><span class="paren">)</span> <span class="comment">#reproducible results</span>

<span class="identifier">bird.div</span><span class="operator">&lt;-</span><span class="identifier">adonis2</span><span class="paren">(</span><span class="identifier">bird.dist</span><span class="operator">~</span><span class="identifier">DIVERSITY</span>, <span class="identifier">data</span><span class="operator">=</span><span class="identifier">birds</span>, <span class="identifier">permutations</span> <span class="operator">=</span> <span class="number">999</span>, <span class="identifier">method</span><span class="operator">=</span><span class="string">"bray"</span>, <span class="identifier">strata</span><span class="operator">=</span><span class="string">"PLOT"</span><span class="paren">)</span>
<span class="identifier">bird.div</span></code></pre>
<pre><code>## Permutation test for adonis under reduced model
## Terms added sequentially (first to last)
## Permutation: free
## Number of permutations: 999
## 
## adonis2(formula = bird.dist ~ DIVERSITY, data = birds, permutations = 999, method = "bray", strata = "PLOT")
##           Df SumOfSqs      F Pr(&gt;F)   
## DIVERSITY  1  0.32857 4.1585  0.008 **
## Residual  30  2.37033                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1</code></pre>
<p>strata = ‘exchangeable units’ for permutation. Important for nested design.</p>
</div>
<div id="multivariate-dispersion" class="section level4">
<h4>4. Multivariate dispersion</h4>
<p>The average distance to group centroid. Used as a measure of multivariate beta diversity.</p>
<pre class="r"><code class="r"><span class="identifier">dispersion</span><span class="operator">&lt;-</span><span class="identifier">betadisper</span><span class="paren">(</span><span class="identifier">bird.dist</span>, <span class="identifier">group</span><span class="operator">=</span><span class="identifier">birds</span><span class="operator">$</span><span class="identifier">DIVERSITY</span><span class="paren">)</span>
<span class="identifier">permutest</span><span class="paren">(</span><span class="identifier">dispersion</span><span class="paren">)</span></code></pre>
<pre><code>## 
## Permutation test for homogeneity of multivariate dispersions
## Permutation: free
## Number of permutations: 999
## 
## Response: Distances
##           Df  Sum Sq   Mean Sq      F N.Perm Pr(&gt;F)
## Groups     1 0.00369 0.0036924 0.2231    999  0.638
## Residuals 30 0.49659 0.0165530</code></pre>
<pre class="r"><code class="r"><span class="identifier">plot</span><span class="paren">(</span><span class="identifier">dispersion</span>, <span class="identifier">hull</span><span class="operator">=</span><span class="literal">FALSE</span>, <span class="identifier">ellipse</span><span class="operator">=</span><span class="literal">TRUE</span><span class="paren">)</span> <span class="comment">##sd ellipse</span></code></pre>
<p>&nbsp;</p>
</div>
</div>
<div id="nmds" class="section level3">
<h3>NMDS</h3>
<p>Non-metric multi-dimensional scaling. Unconstrained ordination. See (<a class="uri" href="https://jonlefcheck.net/2012/10/24/nmds-tutorial-in-r/">https://jonlefcheck.net/2012/10/24/nmds-tutorial-in-r/</a>).<br />
The goal of NMDS is to represent the original position of communities in multidimensional space as accurately as possible using a reduced number of dimensions that can be easily visualized. NMDS uses rank orders to preserve distances among objects thus can accomodate a variety of data types.</p>
<p>&nbsp;</p>
<p>Configure samples in 2-dimensional space:</p>
<pre class="r"><code class="r"><span class="identifier">birdMDS</span><span class="operator">&lt;-</span><span class="identifier">metaMDS</span><span class="paren">(</span><span class="identifier">bird.mat</span>, <span class="identifier">distance</span><span class="operator">=</span><span class="string">"bray"</span>, <span class="identifier">k</span><span class="operator">=</span><span class="number">2</span>, <span class="identifier">trymax</span><span class="operator">=</span><span class="number">35</span>, <span class="identifier">autotransform</span><span class="operator">=</span><span class="literal">TRUE</span><span class="paren">)</span> <span class="comment">##k is the number of dimensions</span>
<span class="identifier">birdMDS</span> <span class="comment">##metaMDS takes eaither a distance matrix or your community matrix (then requires method for 'distance=')</span>

<span class="identifier">stressplot</span><span class="paren">(</span><span class="identifier">birdMDS</span><span class="paren">)</span></code></pre>
<p>Stress: similarity of observed distance to ordination distance. &lt; 0.15 to indidates acceptable fit.</p>
<pre class="r"><code class="r"><span class="identifier">install.packages</span><span class="paren">(</span><span class="string">'ggplot2'</span><span class="paren">)</span> <span class="comment">##plotting package</span>
<span class="keyword">library</span><span class="paren">(</span><span class="identifier">ggplot2</span><span class="paren">)</span>

<span class="comment">##pull points from MDS</span>
<span class="identifier">NMDS1</span> <span class="operator">&lt;-</span> <span class="identifier">birdMDS</span><span class="operator">$</span><span class="identifier">points</span><span class="paren">[</span>,<span class="number">1</span><span class="paren">]</span> <span class="comment">##also found using scores(birdMDS)</span>
<span class="identifier">NMDS2</span> <span class="operator">&lt;-</span> <span class="identifier">birdMDS</span><span class="operator">$</span><span class="identifier">points</span><span class="paren">[</span>,<span class="number">2</span><span class="paren">]</span>
<span class="identifier">bird.plot</span><span class="operator">&lt;-</span><span class="identifier">cbind</span><span class="paren">(</span><span class="identifier">birds</span>, <span class="identifier">NMDS1</span>, <span class="identifier">NMDS2</span>, <span class="identifier">trees</span><span class="paren">)</span>

<span class="comment">#plot ordination</span>
<span class="identifier">p</span><span class="operator">&lt;-</span><span class="identifier">ggplot</span><span class="paren">(</span><span class="identifier">bird.plot</span>, <span class="identifier">aes</span><span class="paren">(</span><span class="identifier">NMDS1</span>, <span class="identifier">NMDS2</span>, <span class="identifier">color</span><span class="operator">=</span><span class="identifier">DIVERSITY</span><span class="paren">)</span><span class="paren">)</span><span class="operator">+</span>
  <span class="identifier">geom_point</span><span class="paren">(</span><span class="identifier">position</span><span class="operator">=</span><span class="identifier">position_jitter</span><span class="paren">(</span><span class="number">.1</span><span class="paren">)</span>, <span class="identifier">shape</span><span class="operator">=</span><span class="number">3</span><span class="paren">)</span><span class="operator">+</span><span class="comment">##separates overlapping points</span>
  <span class="identifier">stat_ellipse</span><span class="paren">(</span><span class="identifier">type</span><span class="operator">=</span><span class="string">'t'</span>,<span class="identifier">size</span> <span class="operator">=</span><span class="number">1</span><span class="paren">)</span><span class="operator">+</span> <span class="comment">##draws 95% confidence interval ellipses</span>
  <span class="identifier">theme_minimal</span><span class="paren">(</span><span class="paren">)</span>
<span class="identifier">p</span></code></pre>
<p>&nbsp;</p>
<div id="add-labels-for-tree-species-composition" class="section level4">
<h4>Add labels for tree species composition:</h4>
<pre class="r"><code class="r"><span class="comment">#plot ordination</span>
<span class="identifier">p</span><span class="operator">&lt;-</span><span class="identifier">ggplot</span><span class="paren">(</span><span class="identifier">bird.plot</span>, <span class="identifier">aes</span><span class="paren">(</span><span class="identifier">NMDS1</span>, <span class="identifier">NMDS2</span>, <span class="identifier">color</span><span class="operator">=</span><span class="identifier">DIVERSITY</span><span class="paren">)</span><span class="paren">)</span><span class="operator">+</span>
  <span class="identifier">stat_ellipse</span><span class="paren">(</span><span class="identifier">type</span><span class="operator">=</span><span class="string">'t'</span>,<span class="identifier">size</span> <span class="operator">=</span><span class="number">1</span><span class="paren">)</span><span class="operator">+</span>
  <span class="identifier">theme_minimal</span><span class="paren">(</span><span class="paren">)</span><span class="operator">+</span><span class="identifier">geom_text</span><span class="paren">(</span><span class="identifier">data</span><span class="operator">=</span><span class="identifier">bird.plot</span>,<span class="identifier">aes</span><span class="paren">(</span><span class="identifier">NMDS1</span>, <span class="identifier">NMDS2</span>, <span class="identifier">label</span><span class="operator">=</span><span class="identifier">comp</span><span class="paren">)</span>, <span class="identifier">position</span><span class="operator">=</span><span class="identifier">position_jitter</span><span class="paren">(</span><span class="number">.35</span><span class="paren">)</span><span class="paren">)</span><span class="operator">+</span>
  <span class="identifier">annotate</span><span class="paren">(</span><span class="string">"text"</span>, <span class="identifier">x</span><span class="operator">=</span><span class="identifier">min</span><span class="paren">(</span><span class="identifier">NMDS1</span><span class="paren">)</span>, <span class="identifier">y</span><span class="operator">=</span><span class="identifier">min</span><span class="paren">(</span><span class="identifier">NMDS2</span><span class="paren">)</span>, <span class="identifier">label</span><span class="operator">=</span><span class="identifier">paste</span><span class="paren">(</span><span class="string">'Stress ='</span>,<span class="identifier">round</span><span class="paren">(</span><span class="identifier">birdMDS</span><span class="operator">$</span><span class="identifier">stress</span>,<span class="number">3</span><span class="paren">)</span><span class="paren">)</span><span class="paren">)</span> <span class="comment">#add stress to plot</span>
<span class="identifier">p</span></code></pre>
<p>&nbsp;</p>
</div>
<div id="fit-vectors-to-ordination" class="section level4">
<h4>Fit vectors to ordination</h4>
<p>Which envornmental variables are correlated with the ordination?</p>
<pre class="r"><code class="r"><span class="identifier">fit</span><span class="operator">&lt;-</span><span class="identifier">envfit</span><span class="paren">(</span><span class="identifier">birdMDS</span>, <span class="identifier">bird.mat</span><span class="paren">)</span>
<span class="identifier">arrow</span><span class="operator">&lt;-</span><span class="identifier">data.frame</span><span class="paren">(</span><span class="identifier">fit</span><span class="operator">$</span><span class="identifier">vectors</span><span class="operator">$</span><span class="identifier">arrows</span>,<span class="identifier">R</span> <span class="operator">=</span> <span class="identifier">fit</span><span class="operator">$</span><span class="identifier">vectors</span><span class="operator">$</span><span class="identifier">r</span>, <span class="identifier">P</span> <span class="operator">=</span> <span class="identifier">fit</span><span class="operator">$</span><span class="identifier">vectors</span><span class="operator">$</span><span class="identifier">pvals</span><span class="paren">)</span>
<span class="identifier">arrow</span><span class="operator">$</span><span class="identifier">FG</span> <span class="operator">&lt;-</span> <span class="identifier">rownames</span><span class="paren">(</span><span class="identifier">arrow</span><span class="paren">)</span>
<span class="identifier">arrow.p</span><span class="operator">&lt;-</span><span class="identifier">filter</span><span class="paren">(</span><span class="identifier">arrow</span>, <span class="identifier">P</span> <span class="operator">&lt;=</span> <span class="number">0.05</span><span class="paren">)</span>

<span class="identifier">p</span><span class="operator">&lt;-</span><span class="identifier">ggplot</span><span class="paren">(</span><span class="identifier">data</span><span class="operator">=</span><span class="identifier">bird.plot</span>, <span class="identifier">aes</span><span class="paren">(</span><span class="identifier">NMDS1</span>, <span class="identifier">NMDS2</span><span class="paren">)</span><span class="paren">)</span><span class="operator">+</span>
  <span class="identifier">geom_point</span><span class="paren">(</span><span class="identifier">data</span><span class="operator">=</span><span class="identifier">bird.plot</span>, <span class="identifier">aes</span><span class="paren">(</span><span class="identifier">NMDS1</span>, <span class="identifier">NMDS2</span>, <span class="identifier">color</span><span class="operator">=</span><span class="identifier">DIVERSITY</span><span class="paren">)</span>,<span class="identifier">position</span><span class="operator">=</span><span class="identifier">position_jitter</span><span class="paren">(</span><span class="number">.1</span><span class="paren">)</span><span class="paren">)</span><span class="operator">+</span><span class="comment">##separates overlapping points</span>
  <span class="identifier">stat_ellipse</span><span class="paren">(</span><span class="identifier">aes</span><span class="paren">(</span><span class="identifier">fill</span><span class="operator">=</span><span class="identifier">DIVERSITY</span><span class="paren">)</span>, <span class="identifier">alpha</span><span class="operator">=</span><span class="number">.2</span>,<span class="identifier">type</span><span class="operator">=</span><span class="string">'t'</span>,<span class="identifier">size</span> <span class="operator">=</span><span class="number">1</span>, <span class="identifier">geom</span><span class="operator">=</span><span class="string">"polygon"</span><span class="paren">)</span><span class="operator">+</span> <span class="comment">##changes shading on ellipses</span>
  <span class="identifier">theme_minimal</span><span class="paren">(</span><span class="paren">)</span><span class="operator">+</span>
  <span class="identifier">geom_segment</span><span class="paren">(</span><span class="identifier">data</span><span class="operator">=</span><span class="identifier">arrow.p</span>, <span class="identifier">aes</span><span class="paren">(</span><span class="identifier">x</span><span class="operator">=</span><span class="number">0</span>, <span class="identifier">y</span><span class="operator">=</span><span class="number">0</span>, <span class="identifier">xend</span><span class="operator">=</span><span class="identifier">NMDS1</span>, <span class="identifier">yend</span><span class="operator">=</span><span class="identifier">NMDS2</span>, <span class="identifier">label</span><span class="operator">=</span><span class="identifier">FG</span>, <span class="identifier">lty</span><span class="operator">=</span><span class="identifier">FG</span><span class="paren">)</span>, <span class="identifier">arrow</span><span class="operator">=</span><span class="identifier">arrow</span><span class="paren">(</span><span class="identifier">length</span><span class="operator">=</span><span class="identifier">unit</span><span class="paren">(</span><span class="number">.2</span>, <span class="string">"cm"</span><span class="paren">)</span><span class="operator">*</span><span class="identifier">arrow.p</span><span class="operator">$</span><span class="identifier">R</span><span class="paren">)</span><span class="paren">)</span> <span class="comment">##add arrows (scaled by R-squared value)</span>

<span class="identifier">p</span></code></pre>
<p>&nbsp;</p>
<p>Show gradient of insectivores:</p>
<pre class="r"><code class="r"><span class="identifier">ordisurf</span><span class="paren">(</span><span class="identifier">birdMDS</span>, <span class="identifier">bird.mat</span><span class="paren">[</span>,<span class="string">'IN'</span><span class="paren">]</span>, <span class="identifier">bubble</span><span class="operator">=</span><span class="literal">TRUE</span><span class="paren">)</span><span class="comment">##bubble size reflects abundance of insectivores</span></code></pre>
<p>&nbsp;</p>
<pre><code>## 
## Family: gaussian 
## Link function: identity 
## 
## Formula:
## y ~ s(x1, x2, k = 10, bs = "tp", fx = FALSE)
## 
## Estimated degrees of freedom:
## 5.6  total = 6.6 
## 
## REML score: 35.72947</code></pre>
<p>Resources:<br />
<a href="https://sites.google.com/site/mb3gustame/">GUSTA ME</a> &#8211; Provides several ‘wizards’ in choosing the correct statistical test, walkthrough examples of multivariate analyses, and guide to the major types of analyses.</p>
</div>
</div>
</div>
]]></content:encoded>
			<wfw:commentRss>https://www.biofacebook.com/?feed=rss2&#038;p=1420</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Good software</title>
		<link>https://www.biofacebook.com/?p=1385</link>
		<comments>https://www.biofacebook.com/?p=1385#comments</comments>
		<pubDate>Wed, 24 Jul 2019 06:46:13 +0000</pubDate>
		<dc:creator><![CDATA[szypanther]]></dc:creator>
				<category><![CDATA[Linux相关]]></category>
		<category><![CDATA[二代测序]]></category>
		<category><![CDATA[兴趣杂项]]></category>

		<guid isPermaLink="false">http://www.biofacebook.com/?p=1385</guid>
		<description><![CDATA[<p>multiqc ranger ployly</p> <p>https://github.com/MultiQC</p> <p>https://github.com/ranger/ranger</p> <p>https://zhuanlan.zhihu.com/p/34369349</p> ]]></description>
				<content:encoded><![CDATA[<p>multiqc   ranger    ployly</p>
<p>https://github.com/MultiQC</p>
<p>https://github.com/ranger/ranger</p>
<p>https://zhuanlan.zhihu.com/p/34369349</p>
]]></content:encoded>
			<wfw:commentRss>https://www.biofacebook.com/?feed=rss2&#038;p=1385</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>R drawing png with high resolution</title>
		<link>https://www.biofacebook.com/?p=1369</link>
		<comments>https://www.biofacebook.com/?p=1369#comments</comments>
		<pubDate>Fri, 31 May 2019 04:34:37 +0000</pubDate>
		<dc:creator><![CDATA[szypanther]]></dc:creator>
				<category><![CDATA[Linux相关]]></category>
		<category><![CDATA[R语言]]></category>

		<guid isPermaLink="false">http://www.biofacebook.com/?p=1369</guid>
		<description><![CDATA[<p>可重复的示例：</p> the_plot &#60;- function() { x &#60;- seq(0, 1, length.out = 100) y &#60;- pbeta(x, 1, 10) plot( x, y, xlab = "False Positive Rate", ylab = "Average true positive rate", type = "l" ) } <p>&#160;</p> png( "test.png", width = 3.25, height = 3.25, units = "in", res = 1200, pointsize = 4 ) [...]]]></description>
				<content:encoded><![CDATA[<p>可重复的示例：</p>
<pre class="prettyprint"><code><span class="pln">the_plot </span><span class="pun">&lt;-</span> <span class="kwd">function</span><span class="pun">()</span>
<span class="pun">{</span><span class="pln">
  x </span><span class="pun">&lt;-</span><span class="pln"> seq</span><span class="pun">(</span><span class="lit">0</span><span class="pun">,</span> <span class="lit">1</span><span class="pun">,</span><span class="pln"> length</span><span class="pun">.</span><span class="kwd">out</span> <span class="pun">=</span> <span class="lit">100</span><span class="pun">)</span><span class="pln">
  y </span><span class="pun">&lt;-</span><span class="pln"> pbeta</span><span class="pun">(</span><span class="pln">x</span><span class="pun">,</span> <span class="lit">1</span><span class="pun">,</span> <span class="lit">10</span><span class="pun">)</span><span class="pln">
  plot</span><span class="pun">(</span><span class="pln">
    x</span><span class="pun">,</span><span class="pln">
    y</span><span class="pun">,</span><span class="pln">
    xlab </span><span class="pun">=</span> <span class="str">"False Positive Rate"</span><span class="pun">,</span><span class="pln">
    ylab </span><span class="pun">=</span> <span class="str">"Average true positive rate"</span><span class="pun">,</span><span class="pln">
    type </span><span class="pun">=</span> <span class="str">"l"</span>
  <span class="pun">)</span>
<span class="pun">}</span></code></pre>
<p>&nbsp;</p>
<pre class="prettyprint"><code><span class="pln">png</span><span class="pun">(</span>
  <span class="str">"test.png"</span><span class="pun">,</span><span class="pln">
  width     </span><span class="pun">=</span> <span class="lit">3.25</span><span class="pun">,</span><span class="pln">
  height    </span><span class="pun">=</span> <span class="lit">3.25</span><span class="pun">,</span><span class="pln">
  units     </span><span class="pun">=</span> <span class="str">"in"</span><span class="pun">,</span><span class="pln">
  res       </span><span class="pun">=</span> <span class="lit">1200</span><span class="pun">,</span><span class="pln">
  pointsize </span><span class="pun">=</span> <span class="lit">4</span>
<span class="pun">)</span><span class="pln">
par</span><span class="pun">(</span><span class="pln">
  mar      </span><span class="pun">=</span><span class="pln"> c</span><span class="pun">(</span><span class="lit">5</span><span class="pun">,</span> <span class="lit">5</span><span class="pun">,</span> <span class="lit">2</span><span class="pun">,</span> <span class="lit">2</span><span class="pun">),</span><span class="pln">
  xaxs     </span><span class="pun">=</span> <span class="str">"i"</span><span class="pun">,</span><span class="pln">
  yaxs     </span><span class="pun">=</span> <span class="str">"i"</span><span class="pun">,</span><span class="pln">
  cex</span><span class="pun">.</span><span class="pln">axis </span><span class="pun">=</span> <span class="lit">2</span><span class="pun">,</span><span class="pln">
  cex</span><span class="pun">.</span><span class="pln">lab  </span><span class="pun">=</span> <span class="lit">2</span>
<span class="pun">)</span><span class="pln">
the_plot</span><span class="pun">()</span><span class="pln">
dev</span><span class="pun">.</span><span class="pln">off</span><span class="pun">()</span></code></pre>
<p>当然，更好的解决方案是放弃这种基本的图形和使用一个系统，将处理你的分辨率缩放。例如，</p>
<pre class="prettyprint"><code><span class="pln">library</span><span class="pun">(</span><span class="pln">ggplot2</span><span class="pun">)</span><span class="pln">

ggplot_alternative </span><span class="pun">&lt;-</span> <span class="kwd">function</span><span class="pun">()</span>
<span class="pun">{</span><span class="pln">
  the_data </span><span class="pun">&lt;-</span><span class="pln"> data</span><span class="pun">.</span><span class="pln">frame</span><span class="pun">(</span><span class="pln">
    x </span><span class="pun">&lt;-</span><span class="pln"> seq</span><span class="pun">(</span><span class="lit">0</span><span class="pun">,</span> <span class="lit">1</span><span class="pun">,</span><span class="pln"> length</span><span class="pun">.</span><span class="kwd">out</span> <span class="pun">=</span> <span class="lit">100</span><span class="pun">),</span><span class="pln">
    y </span><span class="pun">=</span><span class="pln"> pbeta</span><span class="pun">(</span><span class="pln">x</span><span class="pun">,</span> <span class="lit">1</span><span class="pun">,</span> <span class="lit">10</span><span class="pun">)</span>
  <span class="pun">)</span><span class="pln">

ggplot</span><span class="pun">(</span><span class="pln">the_data</span><span class="pun">,</span><span class="pln"> aes</span><span class="pun">(</span><span class="pln">x</span><span class="pun">,</span><span class="pln"> y</span><span class="pun">))</span> <span class="pun">+</span><span class="pln">
    geom_line</span><span class="pun">()</span> <span class="pun">+</span><span class="pln">
    xlab</span><span class="pun">(</span><span class="str">"False Positive Rate"</span><span class="pun">)</span> <span class="pun">+</span><span class="pln">
    ylab</span><span class="pun">(</span><span class="str">"Average true positive rate"</span><span class="pun">)</span> <span class="pun">+</span><span class="pln">
    coord_cartesian</span><span class="pun">(</span><span class="lit">0</span><span class="pun">:</span><span class="lit">1</span><span class="pun">,</span> <span class="lit">0</span><span class="pun">:</span><span class="lit">1</span><span class="pun">)</span>
<span class="pun">}</span><span class="pln">

ggsave</span><span class="pun">(</span>
  <span class="str">"ggtest.png"</span><span class="pun">,</span><span class="pln">
  ggplot_alternative</span><span class="pun">(),</span><span class="pln">
  width </span><span class="pun">=</span> <span class="lit">3.25</span><span class="pun">,</span><span class="pln">
  height </span><span class="pun">=</span> <span class="lit">3.25</span><span class="pun">,</span><span class="pln">
  dpi </span><span class="pun">=</span> <span class="lit">1200</span>
<span class="pun">)</span></code></pre>
]]></content:encoded>
			<wfw:commentRss>https://www.biofacebook.com/?feed=rss2&#038;p=1369</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>tmap install</title>
		<link>https://www.biofacebook.com/?p=1342</link>
		<comments>https://www.biofacebook.com/?p=1342#comments</comments>
		<pubDate>Thu, 27 Sep 2018 05:31:13 +0000</pubDate>
		<dc:creator><![CDATA[szypanther]]></dc:creator>
				<category><![CDATA[Linux相关]]></category>
		<category><![CDATA[生物信息]]></category>

		<guid isPermaLink="false">http://www.biofacebook.com/?p=1342</guid>
		<description><![CDATA[<p>&#160;</p> <p>1199 git clone https://github.com/GPZ-Bioinfo/tmap.git 1200 cd tmap 1201 ll 1202 python setup.py install 1203 ll 1204 cd ../ 1205 rm -rf tmap 1206 deactivate 1207 rmvirtualenv tmap_ENV 1208 mkvirtualenv -p /usr/bin/python3.4m tmap_ENV</p> <p>pip3 install pypiwin32</p> <p>conda install scipy</p> <p>sudo pip3 install matplotlib</p> <p>&#160;</p> ]]></description>
				<content:encoded><![CDATA[<p>&nbsp;</p>
<p>1199 git clone https://github.com/GPZ-Bioinfo/tmap.git<br />
1200 cd tmap<br />
1201 ll<br />
1202 python setup.py install<br />
1203 ll<br />
1204 cd ../<br />
1205 rm -rf tmap<br />
1206 deactivate<br />
1207 rmvirtualenv tmap_ENV<br />
1208 mkvirtualenv -p /usr/bin/python3.4m tmap_ENV</p>
<p>pip3 install pypiwin32</p>
<p>conda install scipy</p>
<p>sudo pip3 install matplotlib</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>https://www.biofacebook.com/?feed=rss2&#038;p=1342</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Good measure to download sequence from NCBI based on acc or gi number</title>
		<link>https://www.biofacebook.com/?p=1316</link>
		<comments>https://www.biofacebook.com/?p=1316#comments</comments>
		<pubDate>Mon, 16 Jul 2018 05:27:14 +0000</pubDate>
		<dc:creator><![CDATA[szypanther]]></dc:creator>
				<category><![CDATA[Linux相关]]></category>

		<guid isPermaLink="false">http://www.biofacebook.com/?p=1316</guid>
		<description><![CDATA[cat file_with_ids.txt &#124; while read p; do echo $p; esearch -db nucleotide -query $p &#124; efetch -format fasta &#62; $p.fasta; done; <p>&#160;</p> <p>&#160;</p> <p>cat ginumber.txt&#124; while read p; do echo $p; efetch -db nucleotide -id $p -format gb &#62; $p.gbk; done;</p> <p>&#160;</p> <p>shenzy@SZYENVS:~/work/zhongshan/virus_database$ cat ginumber.txt&#124; while read p; do echo $p; efetch -db nucleotide -id [...]]]></description>
				<content:encoded><![CDATA[<pre class="pre language-bash"><code class=" language-bash"><span class="token function">cat</span> file_with_ids.txt <span class="token operator">|</span> <span class="token keyword">while</span> read p<span class="token punctuation">;</span> <span class="token keyword">do</span> <span class="token keyword">echo</span> <span class="token variable">$p</span><span class="token punctuation">;</span> esearch -db nucleotide -query <span class="token variable">$p</span> <span class="token operator">|</span> efetch -format fasta <span class="token operator">&gt;</span> <span class="token variable">$p</span>.fasta<span class="token punctuation">;</span> <span class="token keyword">done</span><span class="token punctuation">;</span></code></pre>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>cat ginumber.txt| while read p; do echo $p; efetch -db nucleotide -id $p -format gb &gt; $p.gbk; done;</p>
<p>&nbsp;</p>
<p>shenzy@SZYENVS:~/work/zhongshan/virus_database$ cat ginumber.txt| while read p; do echo $p; efetch -db nucleotide -id $p -format gb &gt; $p.gbk; done;<br />
AY180661<br />
AY180662<br />
AY180663<br />
AY180664<br />
AY180665<br />
AY180666<br />
AY180667<br />
AY180668<br />
AY180669<br />
AY180670<br />
AY180671<br />
AY180672<br />
AY180673<br />
AY180674<br />
AY180675<br />
AY180676<br />
AY180677</p>
]]></content:encoded>
			<wfw:commentRss>https://www.biofacebook.com/?feed=rss2&#038;p=1316</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>fasta2nexus by R script</title>
		<link>https://www.biofacebook.com/?p=1309</link>
		<comments>https://www.biofacebook.com/?p=1309#comments</comments>
		<pubDate>Fri, 12 Jan 2018 08:59:54 +0000</pubDate>
		<dc:creator><![CDATA[szypanther]]></dc:creator>
				<category><![CDATA[Linux相关]]></category>
		<category><![CDATA[R语言]]></category>
		<category><![CDATA[生物信息]]></category>

		<guid isPermaLink="false">http://www.biofacebook.com/?p=1309</guid>
		<description><![CDATA[ Workspace loaded from ~/.RData] &#62; setwd("/home/shenzy/work/beast/51samples") &#62; library(seqinr) &#62; data=read.fasta("51strain_core_gene_alignment.aln") &#62; library(ape) Attaching package: ‘ape’ The following objects are masked from ‘package:seqinr’: as.alignment, consensus &#62; write.nexus.data(data,file="51strain_core_gene_alignment.aln.nexus", format="DNA") &#62; [...]]]></description>
				<content:encoded><![CDATA[<table class="GCWXI2KCCKB ace_text-layer ace_line GCWXI2KCAU" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td align="left">
<pre id="rstudio_console_output" class="GCWXI2KCJKB" tabindex="0">Workspace loaded from ~/.RData]

<span class="GCWXI2KCPKB ace_keyword">&gt; </span><span class="GCWXI2KCPJB ace_keyword">setwd("/home/shenzy/work/beast/51samples")
</span><span class="GCWXI2KCPKB ace_keyword">&gt; </span><span class="GCWXI2KCPJB ace_keyword">library(seqinr)
</span><span class="GCWXI2KCPKB ace_keyword">&gt; </span><span class="GCWXI2KCPJB ace_keyword">data=read.fasta("51strain_core_gene_alignment.aln")
</span><span class="GCWXI2KCPKB ace_keyword">&gt; </span><span class="GCWXI2KCPJB ace_keyword">library(ape)
</span><span class="GCWXI2KCDKB  ace_constant">
Attaching package: ‘ape’

</span><span class="GCWXI2KCDKB  ace_constant">The following objects are masked from ‘package:seqinr’:

    as.alignment, consensus

</span><span class="GCWXI2KCPKB ace_keyword">&gt; </span><span class="GCWXI2KCPJB ace_keyword">write.nexus.data(data,file="51strain_core_gene_alignment.aln.nexus", format="DNA")
</span></pre>
</td>
</tr>
<tr>
<td align="left"></td>
</tr>
<tr>
<td align="left">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td rowspan="1" align="left" width="1" height="">
<div class="GCWXI2KCPKB ace_keyword">&gt;</div>
</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>https://www.biofacebook.com/?feed=rss2&#038;p=1309</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
