研究生是考出来的,博士生是联系出来的!

这句话早在10年前我一个师兄就告诉我。早在2006年我去上生面试的时候,我就发现已经有考生早就在实验室干了。反正我当年是fail了,然后我为何没能调剂到军事医学科学院,因为06年的时候,正是裁军的时候,军医科的名额很少,而导师手下也有一名同学初试过了,而且已经在实验室干了一年,名额必须给他。

所以在此处,我想跟大家说,十多年前尚且如此,现在行情只会更差,研究生也要联系了!

Continue reading

画图倒不如手绘

在《漫画版的进化树你见过吗?》一文中,我介绍过一个R包,可以把ggplot2转成漫画风格,今天介绍一个新的包,ggrough,它封装了一个叫roughjs的javascript库,可以把ggplot2转成手绘风格:

require(dplyr)
library(ggplot2)
count(mtcars, carb) %>%
  ggplot(aes(carb, n)) +
  geom_col() + 
  labs(title="Number of cars by carburator count") + 
  theme_grey(base_size = 16) -> p 
p

Continue reading

做学术终究是看脸...

做科研我们不爽的是没有结果,比结果更不爽的是结果不符合预期,故事不知道该怎么编,然而戏真的不要太多,学术不是以预期来驱动的,请尊重一下事实,还有你的小鼠。

we had a quick email exchange about this and I would like to report this. (I appologise for contacting you directly, rather than following the submission guideline). I have a dataset with 6166 proteins of which 201 proteins are upregulated. The problem is that specifying the background proteins using universe argument in clusterProfiler, decreases the number of significant GO categories (28 significant categories without the universe argument and 5 with this argument). At the same time when I use online GORILLA tool I get a lot of categories, with the background:

http://cbl-gorilla.cs.technion.ac.il/GOrilla/kwpgie9l/GOResults.html

and not categories without the background:

http://cbl-gorilla.cs.technion.ac.il/GOrilla/5y4n3hn1/GOResults.html

I am not sure whether this is a bug or not, so I decided to report it here

The dataset is presented below …

> allProtUGO <- enrichGO(gene = upRegProt, OrgDb = org.Hs.eg.db,  keyType = "UNIPROT",  ont='ALL', pool = TRUE, 
                       qvalueCutoff = 0.05)

>identifiedProtUGO <- enrichGO(gene = upRegProt, OrgDb = org.Hs.eg.db,  keyType = "UNIPROT",  ont='ALL', pool = TRUE, 
                             qvalueCutoff = 0.05,  universe = backgroundProt)

>dim (allProtUGO@result)
>dim (identifiedProtUGO@result)
>

要看数据集地请点击此处直达github issue

Continue reading

之前公众号上有人说,我回大陆了会有一波科学上网的教程,今天的推文算一个吧。真的是被你们言中了!

做为Bioconductor包作者,而git push传代码到Bioconductor上是被封的。这很是恼火,随着10月份将迎来新一版本的Bioconductor发布,不能够push代码是多么惨的一件事。

代理其实也挺恼火的,因为各种协议啊,你要各种设置啊,http/https/ssh/git都是各种配置,其实我只要有一个socks5的代理,然后你们所有需要走代理的程序都通过它就好了。

谁特么有空天天在琢磨怎么配置各种不同协议的代理!只要我们想得到的,一般都有人做了。

于是万能的github上找到了proxychains

A hook preloader that allows to redirect TCP traffic of existing
dynamically linked programs through one or more SOCKS or HTTP
proxies

它强制给定程序发起的TCP连接通过事先配置的代理。可以涵盖所有需要代理的情景。就以git为例,没有proxychains的话,就必须为每个协议(https, git, ssh)按照git文档的要求分别设置代理,过程复杂且不稳定。有了proxychains,这些完全可以不用管,当然应用场景不限于git,任何一个需要代理的命令行程序都是一样在运行的指令前面加proxychains完事。

Continue reading

Bioconductor包的标准安装方法是:

source("https://bioconductor.org/biocLite.R")
biocLite(pkg_name)

这其实是非常不好的,多年以来,一直没有改进,试想一下,bioconductor的网站如果被人黑了,放一段危险的代码,然后你却傻傻地去source它,真的是画面太美!

Bioconductor终于是想要改变了,往CRAN上扔了一个叫BiocManager的包,以后通过CRAN安装这个包,再通过这个包来安装Bioconductor的包,显得安全多了,也不用大家费辣么多口水说你得先source一段网上的代码,当然这个BiocManager还不成熟,起码还没有在BiocInstaller加载的时候提示大家转而用BiocManager,也没有在Bioconductor的网页上介绍使用它来安装。

Continue reading

I post this because I am facing the same problem: I want to change the text of the label (not the font, the face, the colour, etc: the text itself) of the leftmost panel which is automatically called “Tree” by ggtree. As far as I understand, and contrary to what is posted below, the “theme” thing of ggplot2 only allows to change the appearance of the panel header, not the text of the panel title itself… So how to go about that?

这是google group里的问题,说的是facet_plot会把画树的panel叫做Tree,而他想改名,于是我就写了一个函数,facet_labeller来回应这个问题。

Continue reading

用ggplot2画3D

在《扪心自问,meme几何?》一文中,我画了一只兔子,今天给大家演示一下画一只3D版本的兔子,我们知道ggplot2不支持3D,只能画2D的图,但3D其实只是视觉上的,显示在你屏幕上的,同样只是2D。所以我们要做的,就是把3D的坐标转换成2D,然后画出2D的图片来,而这2D看上去有3D的效果。

Continue reading

Author's picture

Guangchuang Yu

a senior-in-age-but-not-senior-in-knowledge bioinformatician

Postdoc researcher

Hong Kong