第一次听说R markdown的时候,简单以为Rmarkdown只是一个markdown拓展的一个小工具而已,最近才发现Rmarkdown是一个展示报告的利器!如果你不想用word等老套的报告模式,那么Rmarkdown绝对能满足你的需求,并且其还有其他优势所在(自行搜下就明白了)
rMATS可视化-rmats2sashimiplot
Symbols count in article: 3.7k Reading time ≈ 3 mins.
之前的对rMATS软件做笔记的时候,提到过rmats2sashimiplot这款专门用来对rMATS分析结果做可视化的软件,最近尝试用了下,操作比较简洁,但是还是留了点问题没解决
rmats2sashimiplot,网址:rmats2sashimiplot
R语言 PCA分析
PCA(Principal Components Analysis)即主成分分析,一种无监督算法,降维中的最常见的一种方法
为什么要降维:
- 减少高维数据的处理难度,降低后续计算的复杂度
- 去除噪音和冗余数据,同时减少信息的损失
- 低维数据相比高维更加容易理解及可视化
PCA的本质:将具有相关性的高维变量通过线性变换投影到低维空间上,这低维变量称为主成分;并且通过最大方差理论使得第一主成分能对原始数据更多的解释(变异最大,也就是方差最大),同时也使得这些低维度变量的相关尽可能的小,便于后续分析
R语言 相关性分析
来自于 白话统计这本书的 一些笔记
R语言 简单方差分析
Perl 多线程处理数据
Symbols count in article: 3.1k Reading time ≈ 3 mins.
现在学习Perl的人真不多了(略微有点感触),最近想了解下Perl的多线程/多进程的使用方法,在网上查下文章想学习下,结果发现都是2-5年前写的文章了。当然以"胶水"语言著称的Perl也不太适合来写一些讲究效率的软件,毕竟速度摆着那;尤其在生信领域,常规的软件还是R/Python比较多,如果是支持多线程的软件则一般也是C++/JAVA写的
使用Perl/sed/awk分割大文件(测序fastq文件)
Symbols count in article: 2.2k Reading time ≈ 2 mins.
之前一段时间一直在用R,最近刚转变过来时差点都不会写了Perl了(有时觉得R的向量思维真的很棒!应用性极强~)
刚好遇到一个问题需要解决:将4000000行的测序fastq序列分割成10份,强行用Perl写了下。。下面是一些解决思路(代码比较简单,就不做注释了)
R 多线程并行计算
R作为当今最为流行的统计分析软件之一,其处理数据一般都是默认单线程跑的。而现今各种云平台层出不穷,其主要目的就是加快分析速度从而节省分析成本,比如现在大型平台的全基因组分析的耗时都按分钟记了(当然是最快的那种),因此有时我们平时处理数据时,也可以优先考虑下将R并行化,在计算资源足够的情况下,肯定是越快越好
写了一个siGSEA包
最近花了一周的时间写了一个简化版GSEA分析包,命名为siGSEA
前段时间用GSEA处理了一些数据,发现其官网还在更新的只有GSEA的桌面版和服务器java版,其R版本只有一个2005年写的脚本!!!我那时粗略的看了一遍,感觉使用起来实在有点繁琐,并且GSEA官网的R代码很长,足足有2500+行,个人对其代码的风格很不适应;因此就有了想法自己重新写一个GSEA的R包,这样单从使用的角度来说更加方便点(虽然可能自己以后也用不了几次,而且GSEA桌面版功能更加全面。。。),毕竟现在很多生信分析软件都是以R包的形式,当然也顺便写个R包娱乐下
置换检验(Permutation Test)
我们一般平时较为常用的检验要属有参检验,但是其要求样本必须满足近似正态,无离群点,数据量大等要求;而有些时候其实很难都满足以上前提条件,则这时需要使用无参检验,其只关注数据的秩,但是无参检验有时也无法处理一些样本数较少的情况,这时则可以使用置换检验
GSEA使用事项小结
Symbols count in article: 4.9k Reading time ≈ 4 mins.
最近为了了解下GSEA的算法的整体思路以及软件一些主要参数的具体含义,从头看了下其R代码,由于其R代码是作者在软件早期写的,其功能并不是很完善,但是其核心的思路还是在代码中体现出来了(其实主要还是GSEA的JAVA版看不懂。。)
下面结合作者发表的文献、官方手册以及R代码,对一些有意义的参数和一些指标做个简单的记录,也算一次看代码后的小结,如果可能的话,也想从头写一个简化版的GSEA的R代码(主要发现官方的R代码写的年代好早之前了,代码写的有点啰嗦~~)以及其出图的代码
GSEA-基因富集分析
Symbols count in article: 4.8k Reading time ≈ 4 mins.
说到富集,富集是将基因根据一些先验的知识(也就是常见的注释)进行分类的过程。我们一般会想到最常见的是GO/KEGG富集,其思路是先筛选差异基因,然后确定这些差异基因的GO/KEGG注释,然后通过超几何分布计算出哪些通路富集到了,通常会选择一个阈值来卡一下,比如p值和FDR等。因此这会涉及到人为的阈值选择,具有一定的主观性,而且只能用于差异较大的基因,所以结果可能有一定的局限性。
Mutant-allele tumor heterogeneity(MATH)
Symbols count in article: 2.6k Reading time ≈ 2 mins.
最近有点浮躁,出去散了下心没什么好转,已经有1个多月没有系统的学习了,除了工作,其他时候也不知道在忙啥。
有时间就看了看文献,之前有一朋友推荐我看一篇临床研究的文献,发表于2017年 Breast Cancer Res Treat期刊的Clinical and molecular relevance of mutant-allele tumor heterogeneity in breast cancer,主要讲了使用Mutant-allele tumor heterogeneity(MATH)算法评估肿瘤异质性,并研究了其与一些临床指标以及组学数据的相关性,思路很简单,效果比较一般,并没有较大的突破,但是其MATH的算法还是值得看看的
如何快速写一个R包
这个不是标题党,我确实很快的写了属于我自己的第一个R包,前后可能不过1小时,但是这个只是一个包的基础框架,也就是说,是一个最最简单的R包。。。
Aria2百度云下载
我在去年才听说原来有个给百度云下载提速的方法-aria2,那时用了后感觉非常新奇,然后就写了篇博文记录下aria2+chrome+BaiduExporter下载百度云,然后过了半年有余发现该方法已经失效了,可能baidu修复了这个'BUG'~~
浅谈蛋白组的差异蛋白分析
Symbols count in article: 5k Reading time ≈ 5 mins.
蛋白质组学在现在众多组学中属于起步较晚的组学之一,一般跟代谢组并列提起,因为都是通过质谱仪进行检测(虽然代谢组不一定要用质谱)。我们通过质谱下机数据,然后经过软件进行图谱分析(查库),然后获得肽段/蛋白的丰度值,接下来可能就跟RNA-Seq等NGS数据一样,需要在蛋白表达谱(虽然由于仪器的限制,并未能检测到全部低丰度蛋白,鉴定到的蛋白数目还是处于N千数量级)中筛选出丰度发生显著变化的蛋白(这也就是常说的比较蛋白组学)
Significance A and B for protein ratios
Symbols count in article: 3.4k Reading time ≈ 3 mins.
实验设计中,一般会做三个生物学重复来确保结果的准确性,尤其在下游分析中。但有时会遇到没有生物学重复,而又需要进行差异分析的情况,这时一般建议考虑foldchange即可,因为根本无法进行T-test等统计学方法嘛。但是如果必须要算一个P值(个人觉得没啥必要。。。),那么不同组学有各自处理的方法(虽然并不是靠谱),比如NGS的转录组的一些软件会预估一个离散度做校正,而质谱的蛋白组则是用Significance A/B算法,这篇文章主要讲下Significance A/B是怎么来的
一个R包的故事
Symbols count in article: 4.9k Reading time ≈ 4 mins.
本来应该这是一个很正常的学习过程,之前总结了一篇博文Bioconductor的质谱蛋白组学数据分析,对蛋白组学定量那块比较感兴趣,正好看到一个R包-MSstats,其可用来对DDA,SRM和DIA的结果进行蛋白差异分析,这R包发表于2014年,那时来说还是很不错的(还在不断更新维护),并且其还支持Maxquant查库结果文件作为输入(主要我有些此类测试文件),非常有兴趣的想尝试下看看结果,然后就入坑了。。。
以爬虫-纪念博客一周年
不知不觉,写这个博客一年了,也可以说刚好一年整
最初只是临时起意,将博客作为一个学习过程的督促者,在阿里云上买了个服务器,用wordpress尝试搭建了博客,那时感觉还不错,就开始在博客记录自己的笔记。当时也不知道自己能坚持多久,但是有一点还是明白的,只要每天都学习一点,这个博客就会一直更新下去,就这样写了一年
R学习笔记 作图Tips
记录之前一段时候作图的一些基础用法以及小技巧,但不局限于ggplot2(但我用的最多的还是ggplot2),持续更新(如果没忘记的话)。。。