显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

Bioinformatics home

 
 
 
 
 
 

c# yield

2014-12-22 0:11:41 阅读677 评论0 222014/12 Dec22

public static IEnumerable<string> GetName(string name, int maximum_count, int real_count)

{

int counter = 0;

string newname = "";

while (counter++ < maximum_count)

{

if (counter > real_count)

yield break;

newname = newname + " " + name;

yield return newname;

}

}

static void Main()

{

int row = 0;

foreach (string i in TestYield.GetName("xie",9,8))

{

row++;

Console.WriteLine("{0} {1}", row, i);

}

Console.Read();

}

作者  | 2014-12-22 0:11:41 | 阅读(677) |评论(0) | 阅读全文>>

Tools For Metagenomic Data Analysis

2014-12-17 6:37:28 阅读1124 评论1 172014/12 Dec17

cited from https://www.biostars.org/p/58279/

Metagenome assembly

Velvet http://www.ebi.ac.uk/~zerbino/velvet/ Celera http://www.cbcb.umd.edu/research/assembly.shtml#software Metasim(Simulator-used to compare predictions) http://ab.inf.uni-tuebingen.de/software/metasim/welcome.html#Download Euler http://nbcr.sdsc.edu/euler/ JAZZ

Gene calling

genemark.hmm(using HMM models to identify genes) http://exon.gatech.edu/GeneMark/metagenome/Prediction/

MetaGeneMark

FragGeneScan

MetaGeneAnnotator

Orphelia

Metagene

Microbial diversity Analysis

MLST(http://www. mlst.net) http://www.mlst.net/

MOTHUR http://www.mothur.org/

作者  | 2014-12-17 6:37:28 | 阅读(1124) |评论(1) | 阅读全文>>

C# dynamic 彻底体验

2014-11-22 22:48:54 阅读664 评论0 222014/11 Nov22

public class Dynamic2

{

public static void testDynamic()

{

dynamic pp = new ExpandoObject();

pp.Name = "xie";

pp.Age = 12;

// define a method for pp

pp.Increment = (Action<int, string>)((a, b) =>

{

pp.Age++;

Console.WriteLine("a is :" + a.ToString());

Console.WriteLine("b is :" + b);

Console.WriteLine("Fuliang");

});

//define a funciton for pp

pp.Add = (Func<int, int, int>)((a, b) =>

{

Console.WriteLine("FuliangFunc");

return pp.Age + a + b;

});

//register a method for pp

pp.Print = null;

pp.Print += new EventHandler(Dynamic2.PrintOtherInfo);

作者  | 2014-11-22 22:48:54 | 阅读(664) |评论(0) | 阅读全文>>

three ways to use delegate +Action+ Func

2014-11-22 0:57:00 阅读815 评论0 222014/11 Nov22

//delegate 

public class TestDelegate

{

delegate void TestDel( string s);

private static void Print( string s)

{

Console.WriteLine(s);

}

public static void testDelegation()

{

//1.0 delegate

TestDel testDelA = new TestDel(Print);

//2.0 anonymous function & delegate

TestDel testDelB= delegate( string str){

Console.WriteLine( "s="+str);

};

//3.0 lambda

TestDel testDelC = (x) => {

Console.WriteLine( "x is:" + x);

作者  | 2014-11-22 0:57:00 | 阅读(815) |评论(0) | 阅读全文>>

C#泛型之泛型委托

2014-11-14 12:42:45 阅读659 评论0 142014/11 Nov14

在看泛型委托之前还需要先了解委托的概念。

这里讲的委托有两种类型一种是有返回值的,另一种是事件委托。

//定义有返回值的委托 

    public delegate string GenricDelegate<T, S>(T title, S author);

//定义事件委托。

    public delegate void GenricDelegateEnent<E,P>(E Name,P Address);

public class GenericDelegateClass<V,F>

    {

        //声明委托

        public GenricDelegate<V, F> GdeleValue;

        //声明事件委托

        public event GenricDelegateEnent<V, F> GdEvent = null;

public string GetValues(V title, F author)

        {

            //调用委托

作者  | 2014-11-14 12:42:45 | 阅读(659) |评论(0) | 阅读全文>>

数据挖掘博客&R

2014-11-2 12:05:26 阅读370 评论0 22014/11 Nov2

http://xccds1977.blogspot.com/

作者  | 2014-11-2 12:05:26 | 阅读(370) |评论(0) | 阅读全文>>

Logistic回归

2014-11-2 11:57:21 阅读656 评论0 22014/11 Nov2

Logistic回归

让我们用logistic回归来结束本系列的内容吧,本文用例来自于John Maindonald所著的《Data Analysis and Graphics Using R》一书,其中所用的数据集是anesthetic,数据集来自于一组医学数据,其中变量conc表示麻醉剂的用量,move则表示手术病人是否有所移动,而我们用nomove做为因变量,因为研究的重点在于conc的增加是否会使nomove的概率增加。

首先载入数据集并读取部分文件,为了观察两个变量之间关系,我们可以利cdplot函数来绘制条件密度图.

library(DAAG)

head(anesthetic)

cdplot(factor(nomove)~conc,data=anesthetic,main='条件密度图',ylab='病人移动',xlab='麻醉剂量')

从图中可见,随着麻醉剂量加大,手术病人倾向于静止。下面利用logistic回归进行建模,得到intercept和conc的系数为-6.47和5.57,由此可见麻醉剂量超过1.16(6.47/5.57)时,病人静止概率超过50%。

anes1=glm(nomove~conc,family=binomial(link='logit'),data=anesthetic)

summary(ane

作者  | 2014-11-2 11:57:21 | 阅读(656) |评论(0) | 阅读全文>>

广义线性模型

2014-11-2 11:33:34 阅读819 评论0 22014/11 Nov2

广义线性模型

广义线性模型(generalized linear model, GLM)是简单最小二乘回归(OLS)的扩展,在OLS的假设中,响应变量是连续数值数据且服从正态分布,而且响应变量期望值与预测变量之间的关系是线性关系。而广义线性模型则放宽其假设,首先响应变量可以是正整数或分类数据,其分布为某指数分布族。其次响应变量期望值的函数(连接函数)与预测变量之间的关系为线性关系。因此在进行GLM建模时,需要指定分布类型和连接函数。

在R中通常使用glm函数构造广义线性模型,其中分布参数包括了binomaial(两项分布)、gaussian(正态分布)、gamma(伽马分布)、poisson(泊松分布)等。和lm函数类似,glm的建模结果可以通过下述的泛型函数进行二次处理,如summary()、coef()、confint()、residuals()、anova()、plot()、predict()

一、Logistic回归

Logistic回归中假设响应变量服从二项分布,参数family设置为binomial,连接函数link设置为logit,我们以AER包中的Affairs数据集作为例子。该数据集是关于婚姻出轨,其中affairs变量表示出轨次数,数据集中还包括结婚时间、教育、宗教等其它变量。由于affairs为正整数,为了进行Logistic回归先要将其转化为二元变量。

data

作者  | 2014-11-2 11:33:34 | 阅读(819) |评论(0) | 阅读全文>>

R语言:文本(字符串)处理与正则表达式

2014-10-29 11:49:20 阅读2614 评论0 292014/10 Oct29

处理文本是每一种计算机语言都应该具备的功能,但不是每一种语言都侧重于处理文本。R语言是统计的语言,处理文本不是它的强项,perl语言这方面的功能比R不知要强多少倍。幸运的是R语言的可扩展能力很强,DNA/RNA/AA等生物序列现在已经可以使用R来处理。

R语言处理文本的能力虽然不强,但适当用用还是可以大幅提高工作效率的,而且有些文本操作还不得不用。高效处理文本少不了正则表达式(regular expression),虽然R在这方面先天不足,但它处理字符串的绝大多数函数还都使用正则表达式。

Table of Contents

1 正则表达式简介2 字符数统计和字符翻译2.1 nchar和length2.2 tolower,toupper和chartr3 字符串连接3.1 paste函数

作者  | 2014-10-29 11:49:20 | 阅读(2614) |评论(0) | 阅读全文>>

What is K-mer, and what is it used for?

2014-10-17 4:29:19 阅读680 评论0 172014/10 Oct17

K-mer is used for aligning numberous short reads against a genome.

The idea is that algorithm is to align short  fragments of genome that are generated by K-mer method.

That also says we can just align sequenced short reads against K-mer short fragments of genome.

So, if we define 14-mer, there are 415 types of short fragments (each position is consisted either of A/G/C/T, which can be easily located on genome. As long as we know which short fragment  the sequenced shorted read could be matched, then we can quickly know mapping location on genome for the short read.

In fact, most of algorithm loads all of K-mer fragments into memory. So, sometimes, we could

作者  | 2014-10-17 4:29:19 | 阅读(680) |评论(0) | 阅读全文>>

R包 开发工具

2014-10-11 21:45:44 阅读871 评论0 112014/10 Oct11

安装三个组件

install.packages("devtools")

install.packages("roxygen2")

install.packages("testthat")

下载Rtools 和 Rstudio 安装

接着启用devtools, roxygen2, testthat

library("devtools")

library("roxygen2")

library("testthat")

从github更新devtools到最新

install_github("hadley/devtools")

附其他网友安装github上的R组件方法:

经过最近几天的摸索,终于弄明白本地安装R程序包一些方法,尽管从别的地方下载下来程序包可以实现在R上使用本地安装,但通常会遇到“错误: 程辑包'packagesname'没有安装在'arch=i386'中”等情况,因此,不如直接从Github上直接安装,免得出现类似问题。从Github上直接安装的步骤(for Windows):

       第一步:安装合适版本的R软件,安装对应版本的Rtools,安装Rstudio,安装Miketex软件(这些软件均可从官网下载)。

       第二步:打开R软件,选择镜像,安装“devtools”

作者  | 2014-10-11 21:45:44 | 阅读(871) |评论(0) | 阅读全文>>

Good Linux commands from others

2014-10-10 5:30:38 阅读556 评论0 102014/10 Oct10

linux 如何显示一个文件的某几行(中间几行)

【一】从第3000行开始,显示1000行。即显示3000~3999行

cat filename | tail -n +3000 | head -n 1000

【二】显示1000行到3000行

cat filename| head -n 3000 | tail -n +1000

*注意两种方法的顺序

分解:

tail -n 1000:显示最后1000行

tail -n +1000:从1000行开始显示,显示1000行以后的

head -n 1000:显示前面1000行

【三】用sed命令

sed -n '5,10p' filename 这样你就可以只查看文件的第5行到第10行。

Linux统计文件行数

语法:wc [选项] 文件…

说明:该命令统计给定文件中的字节数、字数、行数。如果没有给出文件名,则从标准输入读取。wc同时也给出所有指定文件的总统计数。字是由空格字符区分开的最大字符串。

该命令各选项含义如下:

  - c 统计字节数。

  - l 统计行数。

  - w 统计字数。

这些选项可以组合使用。

输出列的顺序和数目不受选项的顺序和数目的影响。

总是按下述顺序显示并且每项最多一列。

行数、字数、字节数、文件名

作者  | 2014-10-10 5:30:38 | 阅读(556) |评论(0) | 阅读全文>>

some analysis methods

2014-10-3 2:59:34 阅读391 评论0 32014/10 Oct3

alignment_algorithm BWA http://bio-bwa.sourceforge.net/bwa.shtml

variation_calling_algorithmVarScan

http://varscan.sourceforge.net/somatic-calling.html

other_analysis_algorithm annovar http://www.openbioinformatics.org/annovar/

作者  | 2014-10-3 2:59:34 | 阅读(391) |评论(0) | 阅读全文>>

linux 后台提交作业

2014-9-26 22:16:05 阅读535 评论0 262014/09 Sept26

at 3.00pm tomorrow -f ./db_table.sh

At now + 10 minute

At  6.45am  May12

At  11.10pm

At  now + 1 hour

At  9am tomorrw

At  15:00  May 24

At now + 10 minute

echo find /etc -name "passwd" -print | at now +1 minute

echo perl ./test.pl | at now +1 minute

当我们在终端或控制台工作时,可能不希望由于运行一个作业而占住了屏幕,因为可能还

有更重要的事情要做,比如阅读电子邮件。对于密集访问磁盘的进程,你可能希望它能够在每天的非负荷高峰时间段运行。为了使这些进程能够在后台运行,也就是说不在终端屏幕上运行,有几种选择方法可供使用。

在本文中将讨论:

? 设置c r o n t a b文件,并用它来提交作业。

? 使用a t命令来提交作业。

? 在后台提交作业。

? 使用n o h u p命令提交作业。

名词解释:

cron 系统调度进程。可以使用它在每天的非高峰负荷时间段运行作业,或在一周或一月中的不同时段运行。

at命令。使用它在一个特定的时间运行一些特殊的作业,或在晚一些的非负荷高峰时间段或高峰负荷时间段运行。

作者  | 2014-9-26 22:16:05 | 阅读(535) |评论(0) | 阅读全文>>

how to install Pfam_scan.pl under linux (ubuntu)

2014-9-9 4:19:05 阅读698 评论0 92014/09 Sept9

This may seem silly for the pros but I indeed tried several times before make successful installation of pfam_scan.pl on my ubuntu. And I believe this blog is definitely more useful than the installation manual on Pfam FTP for beginners.

Steps:

download the binary file from Pfam FTP from here: ftp://ftp.sanger.ac.uk/pub/databases/Pfam/Tools/

download the required database from Pfam FTP from here: ftp://ftp.sanger.ac.uk/pub/databases/Pfam/current_release( As I only use PfamA so I just download...)

download HMMER3 from here: http://hmmer.janelia.org/software

insall perl and bioperl

use command:

sudo apt-get install perl ( replace perl with bioperl for installation of bioperl)

作者  | 2014-9-9 4:19:05 | 阅读(698) |评论(0) | 阅读全文>>

查看所有日志>>

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016

注册 登录  
 加关注