• 常识的力量


    做生物信息的一定要会利用常识的力量。

    1. 对自己分析结果的把握

    普通生物信息最大的弊端就是太依赖工具、算法这些东西,大部分的人平时其实都不知道自己用的工具到底是干嘛的,它能产生什么结果,更别说评价不同工具的优劣了。(主要也是工具太多了,有些也比较复杂)(建议有空还是看看工具的原理,大致了解就行,这能非常有效的提升分析的手感)

    既然大部分生信工作者都是工具使用者,那我们如何掌控工具产生的结果呢?最有效的就是利用我们已有的常识来反推工具到底在做什么。

    比如我在用RNA-seq数据来组装转录本,300个样品,通过标准的hisat2和stringTie流程我得到所有的转录本,这时我计数了一下699638个转录本。有点惊喜,这么多啊。

    但是,这个数量合理吗?俺暂时不知道。

    接着就是blast,499764条都能比对到,打开结果一看很多转录本都比到一个蛋白上了,而且比对位置也一样,这里我就知道了699638条转录本里大部分应该就是duplication了。

    再接着,除去能比对到多个数据库的转录本,我还剩下10w条,自然就去用CPC等预测lncRNA,发现大部分都被鉴定为non-coding。这不科学吧,CPC和CPAT都是灵敏度、特异性很高的预测工具,别人文章最多也就鉴定几千个,我这随便就鉴定出来了10w条,嘛呀,是不是可以发nature了。

    后来反复思考,觉得这个数字肯定异常,CPC等工具其实是不靠谱的,它们统计的灵敏度、特异性时使用的数据集就是有问题的,他们用的已经注释好的mRNA和ncRNA,那他们就只能局限于预测这两个了。

    但是,但是,我们大部分时候用CPC的时候是直接来跑stringTie等预测的transcript,由于是二代数据,我们组装出来的是转录组碎片,stringtie等出来的大部分都是一些没有意义的exon的随机组合而已(我同时用了ref和denovo模式),也都被CPC预测为non-coding了。

    自此,通过一些常识,我发现strinTie的结果的特征,同时也明白了CPC等工具的局限性。

    所以,在生信分析时,多用常识质问自己“我的结果合理吗?”是很实用的,能防止“重大惨剧”的发生。

    2. 正确写代码的姿势

    生信肯定离不开写代码,我觉得写代码的时候似乎也在利用常识。

    写代码比点击GUI更灵活高效,也更容易出错。

    我有轻微强迫症,所以在写任何代码的时候会输出一些关键的变量,看是否符合自己的预期。

    后来想想,其实这是非常有用的,它能有效杜绝99%的error。

    就像建大楼,从底下开始稳稳的往上堆,大楼就会很稳固。

    在写大型脚本(>1000行)时,再结合模块化思维(函数封装,类),普通人都可以写出非常健壮和正确的脚本。

    小结:诸位想让生信事业一帆风顺的话,还是得多思考,多利用一下常识的力量。

    一些常识:

    How many proteins in the human proteome?

  • 相关阅读:
    Oracle Core 学习笔记二 Transactions 和 Consistency 说明
    Oracle AUTO_SPACE_ADVISOR_JOB 说明
    Windows 下 ftp 上传文件 脚本
    Oracle 11g 中 Direct path reads 特性 说明
    Linux 使用 wget 下载 Oracle 软件说明
    Oracle 10g read by other session 等待 说明
    Oracle 11g RAC INS06006 Passwordless SSH connectivity not set up between the following node(s) 解决方法
    SecureCRT 工具 上传下载数据 与 ASCII、Xmodem、Ymodem 、Zmodem 说明
    Oracle RAC root.sh 报错 Timed out waiting for the CRS stack to start 解决方法
    Oracle RESETLOGS 和 NORESETLOGS 区别说明
  • 原文地址:https://www.cnblogs.com/leezx/p/8640904.html
Copyright © 2020-2023  润新知