王峥峰 分子生态学
 

问题解答

1. 第201页,图8-34中R程序的第5行“SLP<-split_lines_poly(shape.ln,b2)”中的命令“split_lines_poly”运行中可能会出问题,这是由于新版本的tmap程序已经把这个命令删除。读者可以下载我提供的旧版本tmap程序(请在主界面找到“演示数据和相关程序下载”)下载。或者把这个命令改为“SLP<-intersect(b2,shape.ln,drop = TRUE)”。


2.  第35页,MsatCommander软件,图3-1中如果选择“All(slow!)”这个选项,对于较大的数据,运行会很慢,建议还是单个单个选择运行,如先选“Mononucleodite”运行,再依次选“Dinucleodite”等运行。这里说明下,虽然还有很多其它微卫星寻找的程序,但MsatCommander软件是最方便的一个,其它相似软件都安装较为复杂。


3.  第136页,第一行至第二行中的“Obj<-read.genepop("c:/shiyan.gen",(package="adegenet"))命令。如果读者使用新版本的adegenet,运行这个命令会出错。这是软件的一个BUG。解决方法,在R的安装目录下(一般在“C:\Program Files下或“C:\Program Files (x86)”下),依次找到并进入“library”、“adegenet”和“files”,把“shiyan.gen”这个文件拷贝到“files”目录下,然后把上述命令改为“Obj<-read.genepop(system.file("files/shiyan.gen",package="adegenet"))即可。感谢李萌发现问题。


4. 第136页,如果是读取AFLP这类显性数据,可用如下方法:

a<-read.table("C:/Program Files/R/R-3.2.2/library/adegenet/files/AFLP.txt")

Obj <- df2genind(a,ploidy=2,type=c("PA"),ncode=1)

其中“AFLP.txt”是adegenet软件包自带的演示文件。文件在安装R和adegenet的目录下,如我的是在C:/Program Files/R/R-3.2.2/library/adegenet/files下。感谢全慧敏提出。


5. 第180-181页图中的r代码和下载演示的r代码有点出入。演示的r代码是正确的,而书中的r代码不全。因为整个运算是个循环,为了对中间步骤的一些值进行说明,我没有让程序进行循环,而是运行了其中一步。读者可在网站下载演示r代码对比查看。感谢李萌提出。