随时随地跟踪最新热点文献

本文的图表及主要内容均来自 Meta-Research: Tracking the popularity and outcomes of all bioRxiv preprintsRxivist.org: Sorting biology preprints using social media and readership metrics 两篇文献,一篇发表在elife一篇发表在plos biology,如果有兴趣不妨直接阅读原文。

另外,说一句题外话,关于「bioRxiv」如何发音这个事可能每个人都有不一样的读法,在上面的文献中给出了正确的发音方式,「bioRxiv」的发音等同于「Bio Archive」。

一句话读完全文版

只要有网络随时随地用电脑或者手机打开 Rxivist 这个网站就都给你安排明白了。

大文本另类去重多种解法

今天分析数据的时候刚好碰到一个小问题,因为本身文件较大一开始想不出比较好的解决方法,睡个午觉醒来突然有了灵感,自认为目前解决的还算巧妙。

问题

一个 3 列 3,741,430 行的文本(行数比较多),第一列是字符,第二列是字符,第三列是数值,tab 分割。数据格式如下:

A23    B66    1234
C56 D34 2334
B66 A23 1234
D34 C56 2334
E78 F88 1234

这个文本虽然是3,741,430 行,但是其有效信息只有一半。因为A23 B66 1234B66 A23 1234 只是第二列和第一列互换了下位置。

需求

如何尽可能快的处理这个 3 列 3,741,430 行的文本,当某一行的第一列和另一行的第二列相同同时它的第二列又和那一行的第一列相同时,就只保留这两行中的一行即可(具体留哪行没有要求)。简单说就是如下的4行只保留2行:

A23    B66    1234
C56 D34 2334
B66 A23 1234 # 同第一行
D34 C56 2334 # 同第二行

要修改为

A23    B66    1234
D34 C56 2334

如何快速找到自己需要的 R 包

Bioconductor 的存在让只用 R 语言完成 (90% 的) 生物信息分析成为了一种可能,也在很大程度上推动了 R 在生物信息领域的应用和发展。目前 Bioconductor 配合 R 3.6 使用升级到了 3.9 版本。一共有 R 包 1741 个。学习生物信息和 R 语言,它是非常好的资源。

平常偶尔会有人问到我这样的问题:我目前正在做某某分析,你知道有什么 R 包可以用么?如果是不熟的人而且他做的分析我也不熟悉,一般我的回答直接就是不知道;如果是好朋友那我就得顺手帮他快速的找到想要的 Bioconductor R 包。看完今天的文章,这个操作对你来说以后也没有什么难度。

几步操作,快准狠,找到自己要想的 Bioconductor 工具。

给你的高效搜索小技巧

本文提到的内容多余绝大多数人来说是没有必要的,因为你可以能一天也不会有几次搜索,但是对于一个如我这般常年「面向搜索编程」的人来说。一天搜索 30 次,每次节约 10 秒,就是 5 分钟,一年就是 30 个小时。

高级搜索

以 Google 搜索语法为例

小议 linux 并行方法

─=≡Σ(((つ •̀ω•́) つ 车速飚起来,坐稳扶好

前几天朋友圈各种神仙「打架」秀了一波在 R 里分组统计的骚操作,思路总结起来大致是:split-apply-combine。果子还给我直接来了一次需求提速,几个月前需要十几分钟完成的操作如今只要十几秒就拿下了,特别生猛。

在 linux 环境下,不少软件和命令其实也都面临着如何提速的问题。我现在还记得大概一年前 jimmy 问过一个问题:要从一个很大的文本中提取出一批想要的行,如果用 grep -f hewantfile.txt rawdata.txt 来 grep 的话实在是太慢了。当然,这个需要用 R 或者 Python 来做的话,极短时间就可以完成。但如果一定要用 grep 来实现,一种可行的加速方法就是把可拆的元素最大程度拆分,极端的说,就是把 1 个 1 万行的文本拆成 1 万次分析,只运行 1 次。

当然,这些操作都是在你自己一台机器上利用自身多 CPU 特性完成的,如果你能同时操控 1 万台(即使性能很 low 的)机器,那就可以通过 remote 的方式来批量运行,这时「split-apply-combine」的分组思想就近似变成了「MapReduce」的并行思想,而在 linux 也有不少方法可以实现类似这样的效果。

本文所提到的在 linux 中并行主要针对两种需求:一种是只能单线程工作的命令比如 grep 和 sed 以及 bzip2 这类;另一种是一些虽然支持多线程但是并不能充分利用分配线程数的软件,比如 trimmomatic 在实际使用的时候给它 5 个或者 10 个甚至 20 个线程,但每次用到的就是两三个。

并行的使用场景也有两种:多文件和大文件。通常又可以把大文件的场景转换为多文件的场景去解决。

解决 Stringtie 基因重复定量的意外收获

Bioinformatics was like a box of chocolates. You never konw what you’re gonna get ——阿飞正传

铺垫

由于自己之前一直不喜欢用 cufflinks,所以后面的 stringtie 也是能不用就不用,偶尔用下也都是浅尝辄止。因为 stringtie 可以直接拿到基因的 TPM 值,比 RSEM 需要单独构建一次索引的操作省力些,所以最近自己注释了些基因就用它对十几个样本跑了一波基因定量的常规操作。心想做个表达矩阵进行下游分析,结果偶买噶,每个定量结果的行数(基因数)竟然都不一样。同一个注释文件定量出了不同的结果,检查一下原始基因数,发现有的定量结果行数要比实际基因数多 7 个,有的要多 5 个,还不尽相同。

「关键提问」读书笔记

基本信息

  • 原作名:Wait, What?: And Life’s Other Essential Questions
  • 作者:詹姆斯 ·E. 瑞安 (James E. Ryan)
  • 页数:177
  • 整理:思考问题的熊

劳动节这几天抽空读完了一本书,这里做简要整理和记录。「关键提问」的作者是哈佛大学教育研究生院的第十一任院长詹姆斯 ·E. 瑞安,他本人是一个非常优秀的法学家和教育家,全书框架来自其 2016 年在哈佛大学发表的毕业演讲,点击前面的链接可以看到 5 分钟的精华版。

每周文献-190419-植物单细胞BAM重比对以及假基因研究

A Single-Cell RNA Sequencing Profiles the Developmental Landscape of Arabidopsis Root

DOI(url): https://doi.org/10.1016/j.molp.2019.04.004

发表日期:April 17, 2019

关键点

国内首篇植物相关单细胞文章,两个一作还都很熟。

参考意义

植物单细胞的阶段要开启了,今天提到的这篇文章是国内首篇,也是世界范围内的第四篇植物单细胞文章。除此之外,还有几篇已经在 bioRxiv 上上线了,不过还没有正式发表。这些文章都不约而同选择了植物中研究最广的模式之物拟南芥,而且全部研究的是根尖。后面在发展就要看看其它组织和物种的情况了。

如果一个东西在植物里已经出现要快速增长的趋势,那么它在人和动物里应该也就已经相对比较成熟了。此时,即便暂时还用不到,但是相关的技术和方法就需要留意和学习起来。

数据分析需要更好的问题

设计思维和更好的问题

这篇文章的主要内容来自 Roger Peng 最近的一篇博客 Tukey, Design Thinking, and Better Questions。读了之后有些启发便做简单记录。

John Tukey 是美国的数据学,快速傅里叶变换发明人。它在 1962 年发表过一篇题为 “The Future of Data Analysis” 的论文,其中有一句非常著名的话。

Far better an approximate answer to the right question, which is often vague, than an exact answer to the wrong question, which can always be made precise.

Tukey 将数据分析的前三个阶段定义为如下三步:

  1. 识别一个问题 Recognition of problem
  2. 使用一个方法 One technique used
  3. 使用大量其他方式 Competing techniques used

每周文献-190411-lncRNA功能exRNA分析以及DNA甲基化

Antisense lncRNA Transcription Mediates DNA Demethylation to Drive Stochastic Protocadherin α Promoter Choice

DOI(url): https://doi.org/10.1016/j.cell.2019.03.008

发表日期:4 April 2019

关键点

反义 lncRNA 转录可以影响 DNA 甲基化,进而改变染色体结构促进增强子与启动子结合,调控基因表达。

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×