
前景基因: 差异基因
背景基因:对于有参的物种来说,一般建议用参考基因组上的全部基因,对于无参的物种来说,选择组装出来的全部unigenes作为背景基因。
可以对GO分析的go term 进行汇总并且制图。
New Beginnings

前景基因: 差异基因
背景基因:对于有参的物种来说,一般建议用参考基因组上的全部基因,对于无参的物种来说,选择组装出来的全部unigenes作为背景基因。
可以对GO分析的go term 进行汇总并且制图。
参考,小白鱼的生统笔记写的非常棒:
https://cloud.tencent.com/developer/article/1667175
一般线性模型:假设应变量Y呈正态分布
$u_y=\beta_0+\sum_{j+=1}^p\beta_jX_j$
广义线性模型:$g(u_y)$代表了条件均值的函数(指数、泊松、二项式、负二项式等),因此应变量Y服从指数分布的某一种,因此广义线性模型也涵盖了许多非线性模型的存在。
$g(u_y)=\beta_0+\sum_{j+=1}^p\beta_jX_j$
生物数据常见计数型数据,常常偏离正态性,之前常用泊松回归,现在更多被负二项回归取代,可解决过大离差问题,广泛用于计数型因变量的生物统计领域。基于二、三代测序获得的基因表达值通常以reads count值等表示,就是典型的计数型数据。要计算基因表达值这类计数型数值在组间的差异,常规的t检验等方法的统计功效会降低,这时负二项回归就是很好的选择。这也是那些总所周知的基因表达分析R包如edgeR、DESeq2等广为流行的原因,它们的原理就是负二项回归。
负二项回归
参考链接:https://www.jianshu.com/p/472c84347b97
JVM(java virtual machine)
specification, implemenation and instance
1 | public class HelloWord{ |
类:首字母大写
方法:首字母小写
源文件:与类名相同,后缀为.java
1 | //单行注释 |
方法在类中,比如eating是Person的方法
1 | public class Person{ |
1 | # 指定构造方法 |
对象时根据类创建的,在java中,使用关键字来创建一个新的对象,创建对象的步骤:
1 | public class Car { |
源文件声明是有规则的。当在一个源文件中定义多个类,并且还有import语句和package语句时,要特别注意这些规则。
一个源文件中只能有一个public类
一个源文件可以有多个非public类
源文件的名称应该和public类的类名保持一致。例如:源文件中public类的类名是Employee,那么源文件应该命名为Employee.java。
如果一个类定义在某个包中,那么package语句应该在源文件的首行。
如果源文件包含import语句,那么应该放在package语句和类定义之间。如果没有package语句,那么import语句应该在源文件中最前面。
import语句和package语句对源文件中定义的所有类都有效。在同一源文件中,不能给不同的类不同的包声明。


人的基因组1.5%编码20000多个基因,与其他物种高度保守,剩余序列不保守。
genomes change over time.

occam’s razor:找最短路径
比对的本质就是两个字符串相似性的比较,是否gaps allow, 找到longest common subsequence.
Formualation1. longest common substring(no gap)
Formualation2. longest common subsequnece( gaps allowed)
edit distance: number of change needed for S1-S2,uniform scoring function
Formualtion 3. Sequence alignment
碱基替换的方式有两种,一种allow gaps(fixed penalty),所有替换打分类似。另一种varing penalties for edit operations.包含transition(嘌呤和嘌呤,嘧啶和嘧啶),tranversion(嘌呤嘧啶随意转换) ,polymerase(不懂)。
Formulation 4. varing gap cost models
linear gap penality(用时短), affine gap penalty,general gap penalty,frame-aware gap penalty(蛋白比对,multiples of 3 disrupt coding regions), seek sulicated regions, rearrangements
由于找到最优序列比对是一个指数级的运算,所以省时省力,需要使用动态规划。(指数型到多项式)
1 |
|
key: score is additive, smaller to larger
calculate maximun alignment score of longer sequences based on previously-computed to scores of shorter sequences.
1 | ls -l | grep "^-" | wc -l |
1 | wc -l log.txt |
1 | a=10 |
1 | if [ ! -d "$outfolder" ];then |
du -lh –max-depth=1
1 | find ./ -name unaligned_mc_tagged_polyA_filtered* | xargs rm |
1 | # 查看第九列为88的内容 |
1 | pkill Xorg #但是之前的进展看不多了 |
less human.sorted_peaks.narrowPeak |sed ‘s/“ “/\t/g’|awk {p’rint $1”\t”$2”\t”$3”\t”$4”\t”$5}’>MW_human.bed
1 | zcat H_R1.fq.gz | echo $((`wc -l`/4)) |
https://zhuanlan.zhihu.com/p/63279107
基于排序之间的相互关系
http://seqanswers.com/forums/showthread.php?t=41983
https://bioinformatics.stackexchange.com/questions/402/how-can-i-downsample-a-bam-file-while-keeping-both-reads-in-pairs
方法1
1 | ( |
方法2
1 | function SubSample { |
samtools view -bs 42.1 in.bam > subsampled.bam
参考https://blog.csdn.net/sunchengquan/article/details/85176940
http://seqanswers.com/forums/showthread.php?t=41983
https://bioinformatics.stackexchange.com/questions/402/how-can-i-downsample-a-bam-file-while-keeping-both-reads-in-pairs
1 | ## 需要额外下载StreamSampler.jar,并且有bam文件版本限制,不好用 |
1 | ##在shell直接执行,存在一个问题就是subsample的不是正好1000,可能是999。因为flagstat里面有两个reads相加,所以需要double number。 |
1 | samtools view -bs 42.1 in.bam > subsampled.bam |
1 | samfile=out.sam |
1 | samtools rmdup in.bam -o rmdup.bam |
1 | samtools view -bS in.sam> out.bam |
1 | /samtools view -h -f 0x002 file.bam |\ |
1 | cd /media/ggj/home/ggj/tmp/DarkReaction/barcode/nofilter |