3月 27

(转)《古城荆棘王》剧情详解

序:看完《古城荆棘王》,莫名其妙得想到了《古剑奇谭》;也许两者都是建立在“一个强大的信念、一个无情的悲剧”基础之上的吧。而其中的姐姐和妹妹的关系又和《云之遥》中兰茵的分身术有几分相像……整个电影正叙与插叙、倒叙相混杂,现实与梦境、童话相交织,看完一遍很难明白到底是怎么一回事;所以在此处转载一下完全按事件发展的时间顺序来讲述的完整剧情。

此片剧情实为诡异,最后半小时尤为神棍……打破电影的顺序,按照故事的时间发展顺序,剧情应该是这样的:

几年前,一颗陨石撞击地球,陨石上附带的石化病(早在人类出现前就存在在宇宙中)也就因而开始在人类中传播。在陨石撞击的地方(俄罗斯某 村),村里的人都因为感染石化病而死去,除了一个叫爱丽丝的小萝莉。一位俄罗斯军官(维加)负责调查这个村子里的人突然全部死亡的原因,却发现伴随着石化病的出 现,村里同时也出现另外一个现象——有一个奇异的非自然进化出来的生物总是袭击、杀死人类。俄罗斯军官让手下射死了这个怪物,却发现了那个活下来的小萝莉。在进一步调查中,军官发现原来这个怪物是从小女孩的空想中产生的。后来军官认识到,小萝莉也感染了石化病而她没有死,反而因此获得了直接将想象转化成 现实的能力(当精神高度集中时),而且寿命是半永久的。
Continue reading

3月 26

基因组的坐标系统:0-based与1-based

在现实生活中,我们经常会遇到从0开始计数还是从1开始计数的问题。此处先从现实生活中的实例说起,过渡到电脑编程,然后再详细解释基因组的坐标问题,最后列出一些有用的网址,感兴趣的可以继续阅读、加深理解。

  • first floor的问题

In British English the floor of a building at street level is the ground floor and the floor above that is the first floor.
在英式英语中, 楼房地面与街道相平的楼层叫ground floor, ground floor上面的一层叫first floor.

In US English the street-level floor is the first floor and the one above is the second floor.
在美式英语中, 与街道相平的楼层叫first floor, 其上面的一层叫second floor.
注:以上解释来源于《牛津英汉双解美化版》。
Continue reading

3月 26

使用BioPerl解析BLAST结果

虽然有多种多样的办法来解析BLAST,即时单单对于Perl/BioPerl来说,你可以找到好多已有的脚本,如:blast_parsing.pl。但要想灵活的控制筛选条件及输出结果,还需要自己撰写脚本或者修改别人的脚本。所有这些的前提是你对BLAST结果中的各个项目有所了解,同时要知道如何提取出自己想要的项目。……【阅读全文】

3月 21

山人何处君不见?东风一花倚阑干! ——《全唐诗》、《全宋词》统计分析报告

山人何处君不见?东风一花倚阑干!

——《全唐诗》、《全宋词》统计分析报告

一、源起

前两天看到了邱怡轩写的统计词话(一)。受其启发,决定利用自己的编程及统计分析能力,对《全唐诗》和《全宋词》进行一个较为全面的统计分析与比较。于是便有了你现在看到的这篇文章。
此处使用到的原始数据、程序脚本及结果图表等均可以在文末找到下载链接。

二、数据

《全唐诗》及《全宋词》的原始数据均来自于网络。
通过基本的编码转换以及“简单”的过滤筛选之后,就得到了用于后续统计分析的数据。

三、工具

系统平台:Linux(Ubuntu 10.10,AMD64)。
Shell命令行:转换编码(iconv)与换行符(fromdos)。
Perl(v5.10.1):用来过滤、筛选原始数据,得到可以用于后续分析的格式化数据。
R(v2.12.2):统计分析及图表绘制。
其他:Vim(v7.2.330),TimeForScience

四、结果

1.基本信息

general_info
补充:只考虑诗或词的主体内容的话,《全唐诗》共使用了7513种(个)汉字,而《全宋词》则使用了5750种(个)汉字。
此处的统计数据仅为约数,与其他的数据有一定的出入。主要原因在于原始数据的质量以及数据处理过程中的过滤筛选等。
相关的参考数据:
百度百科:《全唐诗》共收录唐代诗人2529人,诗作42863首。
玄烨为《全唐诗》所作的序中的说法:诗48900余首,2200余人。
日本学者平冈武夫的统计结果:《全唐诗》共收诗49403首,句1555条,作者2873人。
维基百科:《全宋词》收录宋代词人1330家,词作21116首。
Continue reading

3月 18

回答的智慧

回答的智慧

1. Don’t answer questions to which you don’t know the answer(不回答自己不知道答案的问题)
2. Explain yourself (解释给自己)
如果自己是提问者,你的回答是否能让自己明白?
3. Give as little assistance as necessary (尽可能的给最少的帮助)
有的时候启发性的回答更为有效.
4. Show your workings (展示你的做法)
5. Use humour judiciously (明智地使用幽默)
有的时候因为不同语境/语言的问题,你的俏皮话可能会让提问者更加困惑。
6. If you can’t say something nice don’t say anything atall(如果你不能说出有用的内容,就别说)
7. Avoid jargon, baffling acronyms and idiolects(避免行话、令人困惑的缩写词、习惯用语)
8. Never never never just respond with RTFM. Not ever.(永远永远永远不要回复RTFM)
这里的 RTFM 代表”Read The Fucking Manual”, “去读该死的手册”.
另外一个常见的是: STFW –Search The Fucking Web, “搜索该死的网络”,或者友好一点的 “Google 一下”.
对于中文论坛上,我觉得还有一个尽量不要说 “RPWT” –人品问题
9. Meditate on eternity (永远的深思熟虑)
回答的问题,可能在不久以后会被别人搜索到,看到,甚至是被你将来的老板看到。一个欠缺思索的回答无疑会降低你在其他技术人员心目中的形象。
10. Keep your newbie mind (保持自己的”新手”思维)
学无止境
保持谦卑。回答并不意味着你是”给予”, 可能你也在学习. 不要认为回答了一些问题自己就成了 Guru 了.……【阅读全文】

3月 18

R语言常用函数参考

资料来源:S常用函数参考

  • 基本

一、数据管理

vector:向量
numeric:数值型向量
logical:逻辑型向量
character;字符型向量
list:列表
data.frame:数据框
c:连接为向量或列表
length:求长度
subset:求子集
seq,from:to,sequence:等差序列
rep:重复
NA:缺失值
NULL:空对象
sort,order,unique,rev:排序
unlist:展平列表
attr,attributes:对象属性
mode,typeof:对象存储模式与类型
names:对象的名字属性
Continue reading