原文发表于轻单,由于它濒死,于是转载于此。

作为一个咖啡爱好者,偶尔也发点非专业类的文章在这个博客。生活若完全没有了情调,人也会变得无聊吧。


想享受咖啡又 (xiâng) 犯 (shêng) 懒 (qián) ?请看。

法压壶

使用金属滤网。放入磨好的粉,泡上热水,压下,倒出。丢弃咖啡渣,热水冲干净即可。



摩卡壶

爱咖啡的油脂?用摩卡壶。

  • 装粉,装水,组装壶。加热,出咖啡后拆开壶清洗。
  • 优点:使用金属滤网,好清洗;缺点:需要热源。


不锈钢过滤器

  • 优点:金属滤网好清洗;
  • 缺点:萃取不能一次完成(需要多次注水来萃取),需要有个注水的壶。

配一把手冲壶,还是有必要的。可有做出优秀的单品咖啡。



越南咖啡过滤器

嫌单品太苦,试试越南咖啡,配炼乳。

  • 优点:注水后等着就行了。
  • 缺点:需要滤纸。


背景

  • 为什么要使用 aspera?

    • 因为测序数据迈入 NGS 时代后,通量增长很快,尤其是 NCBI SRA 的数据,单个压缩包很大,需要使用更快速的传输工具。
    • aspera 提供命令行的交互,便于管理
  • aspera 比传统的 scp, wget 速度更快,同时具有命令行程序的纯文本输出特性。

  • aspera 还有图形界面版本,适合多种偏好的用户。

博耘生物说:

速铂Aspera是一套商业的高速文件传输解决方案,随着高通量数据的大量产生,从而对于大文件快速传输的需求,开始应用到生物领域,目前 NCBI、EBI 的 SRA 库都提供这样的服务。

一句话,远距离,大文件,Aspera 优势巨大。

我说:

你如果经历过使用 wget 下载 sra 数据要等几天几个星期,还可能断掉,就知道用下面这个黑科技有多爽了。

安装 aspera-connect:

1
2
3
4
5
6
7
8
9
10
11
12
# 查看系统的版本
$ uname -a
*x86_64*

# 下载对应的版本(目前测试需要翻墙)
$ wget http://download.asperasoft.com/download/sw/connect/3.6.0/aspera-connect-3.6.0.106805-linux-64.tar.gz

$ gunzip aspera-connect-3.6.0.106805-linux-64.tar.gz
$ tar -xvf aspera-connect-3.6.0.106805-linux-64.tar

# 安装
$ sh aspera-connect-3.6.0.106805-linux-64.sh

安装输出结果

1
2
3
4
5
6
Installing Aspera Connect

Deploying Aspera Connect (/home/your_user_name/.aspera/connect) for the current user only.
Restart firefox manually to load the Aspera Connect plug-in

Install complete.

修改环境变量

1
2
3
4
5
6
7
$ vi ~/.bash_profile

# 添加下面一行
export PATH=/home/your_user_name/.aspera/connect/bin:$PATH

# 环境变量生效
$ source ~/.bash_profile

配置参数,测试下载

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# PRIVATE-KEY-FILE 文件位置
~/.aspera/connect/etc/asperaweb_id_dsa.openssh


# 下载用的命令
$ ascp -i asperaweb_id_dsa.openssh --mode recv --host ftp-private.ncbi.nlm.nih.gov --user anonftp --file-list sra_list.txt -k 1 -QT -l 200m /path_to_save_download/


# 对参数的解释
Usage: ascp [OPTION] SRC... DEST
SRC to DEST, or multiple SRC to DEST dir
SRC, DEST format: [[user@]host:]PATH
-h,--help Display usage
-A,--version Display version.
-i PRIVATE-KEY-FILE Private-key file name (id_rsa)
--mode=MODE MODE: send, recv
--host=HOSTNAME
--user=USERNAME
--file-list=FILENAME File with list of sources
-k RESUME-LEVEL Resume criterion: 0,3,2,1
-l MAX-RATE Max transfer rate
-q Disable progress display
-T Disable encryption
# 一般来说,你只要修改 `--file-list` `-i` 对因你自己的情况即可

获取下载文件地址

一个 sra_list.txt 例子:

1
/sra/sra-instant/reads/ByRun/sra/ERR/ERR009/ERR009428/ERR009428.sra

如何获取此地址:

  1. 找到 sra 文件的页面(发表的文章一般会提供这个页面的 ID),点击红框进入下一页

    找到sra文件的页面(发表的文章一般会提供这个页面的 ID),点击红框进入下一页

  2. 地址栏里显示了地址,然后按照上文的 sra_list.txt 模式编写

    地址栏里显示了地址,然后按照上文的 `sra_list.txt` 模式编写

OS X 如何使用?

在 OS X 下,可以直接从官网下载 dmg 的安装包。安装之后,注意:

1
2
3
4
5
# 程序的可执行文件路径
/Users/your_user_name/Applications/Aspera\ Connect.app/Contents/Resources/ascp

# PRIVATE-KEY-FILE 文件位置
/Users/your_user_name/Applications/Aspera\ Connect.app/Contents/Resources/asperaweb_id_dsa.openssh

其他上述参数沿用。


最后,请欣赏华丽丽的下载速度。

ascp




Install and test bowtie and tophat

注意 /abs_path/filename 表示存放 filename 文件的绝对路径。

下载可执行程序:

1
2
3
4
5
6
7
# 查看系统的版本
$ uname -a
*x86_64*

# 下载
$ wget http://vorboss.dl.sourceforge.net/project/bowtie-bio/bowtie2/2.2.5/bowtie2-2.2.5-linux-x86_64.zip
$ wget http://ccb.jhu.edu/software/tophat/downloads/tophat-2.1.0.Linux_x86_64.tar.gz

修改环境变量

1
2
3
4
5
6
7
8
9
10
11
$ vi ~/.bash_profile

# 添加下面一行
export PATH=/abs_path/tophat-2.1.0.Linux_x86_64:/abs_path/bowtie2-2.2.5:$PATH

# 环境变量生效
$ source ~/.bash_profile

chmod 755 tophat
chmod 755 bowtie2
# 注意,所有的可执行程序,都要改为 755。否则,可能会导致 PBS 无法找到该文件

下载测试用数据,用 bowtie2 做 index,测试 tophat:

1
2
3
4
5
$ wget http://ccb.jhu.edu/software/tophat/downloads/test_data.zip
$ unzip test_data.zip
$ cd test_data
$ bowtie2-build /abs_path/test_ref.fa /abs_path/test_ref
$ tophat /abs_path/test_ref test_reads.fq

Reference

Software




今天师弟问了一个问题:

由于 rab-db 提供的水稻 loc ID 和 Os ID 的转换服务不能用了,有没有其他资源可以提供 ID 转化呢?

我答:

可以使用 uniprot 整理好的 ID。从下载的 uniprot text 的 OrderedLocusNames 属性提取。

其实,这只是 uniprot 数据库的一个简单的应用。作为世界最大的蛋白质数据库,uniprot 可是说是 biocuration 工作的集大成者。我觉得有必要写一个系列来讲讲 uniprot 的各种有趣的用处。本文作为这个系列的第一篇。

Mr.Wiki 说:

UniProt is a comprehensive, high-quality and freely accessible database of protein sequence and functional information, many entries being derived from genome sequencing projects. It contains a large amount of information about the biological function of proteins derived from theresearch literature.

作为一个 uniprot 的老用户,个人认为三大特性当之无愧:

  • comprehensive: 自动化的流程对多个数据库资源的深度整合(有没有百宝箱的感觉?)
  • high-quality: 进行了大量的人工校正
  • freely accessible

uniprot 的最大亮点还在于 research literature 的文献挖掘。这点让大量的文献标准化,从而可以被标准化地分析利用。


UNIPROT 的数据格式



–To be continued–






已经不记得从来里看到的这本书的介绍。后来这本书成了我和爱人一起读的第一本书,却也是在我们最忙的时候(搬到新的城市,换工作,开始城铁通勤生活)读的一本。我陆陆续续的批注,攒成这个札记。



第一部 分认知革命

第一章 人类:一种也没什么特别的动物


在历史的路上,有三大重要革命:大约7万年前,“认知革命”(Cognitive Revolution)让历史正式启动。大约12000年前,“农业革命”(Agricultural Revolution)让历史加速发展。而到了大约不过是500年前,“科学革命”(Scientific Revolution)可以说是让历史画下句点而另创新局。

人类的三次重要革命(伟大的 XX 革命根本排不上号):

  • Cognitive Revolution
  • Agricultural Revolution
  • Scientific Revolution


这点对妇女来说造成的负担更大。直立的步行方式需要让臀部变窄,于是产道宽度受限,而且别忘了婴儿的头还越来越大。于是,分娩死亡成了女性的一大风险。

所以,剖腹产是一种变相的人工进化吗?


其他在金字塔顶端的动物(例如狮子、鲨鱼)得要花上好几百万年的时间,才终于通过演化站上顶峰。因此生态系统有时间发展出种种制衡,避免狮子和鲨鱼造成太大的破坏。
……
但相比之下,智人就像是个香蕉共和国的独裁者。我们在不久之前,还是大草原上的小可怜,整天充满恐惧和焦虑,但这也让人类更加残酷和危险。人类历史上众多的灾难,不论是生灵涂炭的战乱还是生态遭逢的浩劫,其实都是源自这场过于仓促的地位跳跃

人类就是地球的癌症,这是《骇客帝国》里 Agent Smith 的台词。

此外,人类还是一种特别自恋的动物。

制衡这个词在这里颇有些将自然界比拟为“生命共和国”的意味,为了所有生物共同的福祉,地球生态系统一直在默默地平衡各方的利害关系。但从本质思考,这个世界是繁荣还是荒芜,地球一样继续运转;所谓的和谐还是破坏,都是人类自己的价值吧。


毕竟,宽容可不是智人的特色。即使到了现代,不过是因为肤色方言宗教等等微小的差异,就足以让智人彼此大动干戈、非要把对方赶尽杀绝。

很有可能,当智人碰上尼安德特人的时候,就发生了史上第一次也是最严重的一次种族净化运动

同种 (Species) 相残的动物本性在史书中的记录血迹斑斑,更何况同属 (Genus)。


第二章 知善恶树


大约就是在距今7万到3万年前,出现了新的思维和沟通方式,这也正是所谓的认知革命

得到普遍认可的理论认为,某次偶然的基因突变,改变了智人的大脑内部连接方式,让他们以前所未有的方式来思考,用完全新式的语言来沟通。

为什么这只发生在智人的DNA里,而没有发生在尼安德特人的DNA里?我们现在只能说这就是纯粹的偶然

在演化 (evolution) 的历史中,充满了偶然;从生命史的视角,从来就没有什么“历史的必然”。



–To be continued–

收集我用过的 Perl module,写一些简单的用法。

对比较有趣的包,有复杂的用法会单独写文章。

Parser

Data and debug

  • Data::Dumper

Other

  • SVG::Convert




Database

Coding

Community

Blogs

Others




2015 年读书单

在读的和读完的书。

我一直关注电子阅读。用过第一代的 Kindle DX, 后来改用 iPad。目前读书,一部分在 iPad/iPhone,一部分在电脑上。

准备在这里写写读书笔记。欢迎抬杠。

在读

  1. 技术领导之路 by Gerald M.Weinberg, 余晟
  2. Sapiens: A Brief History of Humankind by Yuval Noah Harari
  3. 人造恐慌 by 袁越

读完

  1. 民主的细节 by 刘瑜
  2. 一转念 : 用经济学思考 by 兰小欢
  3. The elements of style by William Strunk Jr. and E. B. White
  4. Pro Git by Scott Chacon

笔记

BLAST

配置 MCL 的 MySQL 数据库

1
2
3
4
$ create database orthomcl;
$ DROP TABLE BestHit, BestInterTaxonScore, BestQueryTaxonScore, BetterHit, CoOrthNotOrtholog, CoOrtholog, CoOrthologAvgScore, CoOrthologCandidate, CoOrthologTaxon, CoOrthologTemp, InParalog, InParalog2Way, InParalogAvgScore, InParalogOrtholog, InParalogTaxonAvg, InParalogTemp, InplgOrthTaxonAvg, InplgOrthoInplg, InterTaxonMatch, Ortholog, Ortholog2Way, OrthologAvgScore, OrthologTaxon, OrthologTemp, OrthologUniqueId, SimilarSequences, UniqSimSeqsQueryId;
$ DROP TABLE BestQueryTaxonScore;
$ orthomclInstallSchema orthomcl.config.template

载入数据到 MySQL

1
2
3
4
$ orthomclLoadBlast orthomcl.config.template similarSequences.txt
$ orthomclLoadBlast orthomcl.config.template similarSequences.txt.rmisoform
$ orthomclPairs orthomcl.config.template orthomcl_pairs.log cleanup=no
$ orthomclDumpPairsFiles orthomcl.config.template

运行 OrthoMCL

1
2
$ mcl mclInput --abc -I 1.1 -o mclOutput11
$ orthomclMclToGroups ORYSA 1 < mclOutput11 > groups11x.txt

结果文件的使用

Reference




升级:增加了画着丝粒的功能。


做了一个染色体的可视化,可以用来显示染色体上特定区域的注释信息,如QTL,基因等等。

chr.js

如何使用

首先,你需要安装 Apache 服务器和 Php 环境在你的电脑上。

之后,用 git 把这个文件夹克隆到你电脑中网络文件存放的位置。

通过浏览器来(chrome, safari, 还是 firefox 根据你的喜好)访问 index.php 这个文件即可见可视化。

如果上面的步骤都成功了,你可以用自己的数据来替换 example_data 文件夹里的例子数据。

图片的例子显示了水稻染色体的SNP,数据集来源于第一个参考文献。

参考文献